मैं HTML के एक ब्लॉक में खोज शब्दों को हाइलाइट करने के लिए कोशिश कर रहा हूँ, समस्या, यदि कोई उपयोगकर्ता "रंग" के लिए एक खोज करता है यह:Lucene.NET खोजें हाइलाइटिंग कि सम्मान करता एचटीएमएल टैग
< span style = ' रंग: सफेद '> व्हाइट </span >
हो जाता है: < span style =' < ख > रंग </b >: सफेद '> < ख > व्हाइट </बी > </अवधि >
और जाहिर है, मेरी शैली को गड़बड़ करना एक अच्छा विचार नहीं है।
Query parsedQuery = parser.Parse(luceneQuery);
StandardAnalyzer Analyzer = new StandardAnalyzer();
SimpleHTMLFormatter formatter = new SimpleHTMLFormatter("<b class='search'>", "</b>");
QueryScorer scorer = new QueryScorer(parsedQuery);
Highlighter highlighter = new Highlighter(formatter, scorer);
highlighter.SetTextFragmenter(new SimpleFragmenter());
Highlighter.GetBestFragment(Analyzer, propertyName, invocation.ReturnValue.ToString())
मैं इस समस्या अनुमान लगा रहा हूँ कि मैं एक अलग Fragmenter की जरूरत है, लेकिन मुझे यकीन है कि नहीं कर रहा हूँ:
यहाँ कोड मैं का उपयोग कर रहा है। किसी भी सहायता की सराहना की जाएगी।
यह बहुत विशिष्ट लगता है, मुझे संदेह है कि किसी के पास एक परीक्षण समाधान है - लेकिन आप हमेशा अपने पैच को Lucene.Net contrib पर अपलोड कर सकते हैं ताकि अन्य इसका उपयोग कर सकें/परीक्षण कर सकें। – Prescott