我使用Lucene.Net来索引一些文档.我想向用户显示关于该文档在结果集中的原因的几行.就像当你使用谷歌搜索它,它显示链接,然后链接后,有几行突出显示关键字.有任何想法吗?
当您有结果时,您可以通过类似于此的方法将索引文本与查询一起传递:
public string GeneratePreviewText(Query q, string text) { QueryScorer scorer = new QueryScorer(q); Formatter formatter = new SimpleHTMLFormatter(highlightStartTag, highlightEndTag); Highlighter highlighter = new Highlighter(formatter, scorer); highlighter.SetTextFragmenter(new SimpleFragmenter(fragmentLength)); TokenStream stream = new StandardAnalyzer().TokenStream(new StringReader(text)); return highlighter.GetBestFragments(stream, text, fragmentCount, fragmentSeparator); }