当前位置:  开发笔记 > 前端 > 正文

Lucene.Net搜索结果以突出显示搜索关键字

如何解决《Lucene.Net搜索结果以突出显示搜索关键字》经验,为你挑选了1个好方法。

我使用Lucene.Net来索引一些文档.我想向用户显示关于该文档在结果集中的原因的几行.就像当你使用谷歌搜索它,它显示链接,然后链接后,有几行突出显示关键字.有任何想法吗?



1> Cristian Lib..:

当您有结果时,您可以通过类似于此的方法将索引文本与查询一起传递:

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);
}


我必须添加Lucene.Net.Contrib nuget包才能找到那些对象。
推荐阅读
家具销售_903
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有