pom.xml中
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-core</artifactId>
<version>2.4.1</version>
</dependency>
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-highlighter</artifactId>
<version>2.4.1</version>
</dependency>
其中lucene-highlighter 在contrib中。
@Autowired
private Analyzer analyzer ;
@Autowired
private SimpleHTMLFormatter simpleHTMLFormatter ;
//text 文字标题 或者正文
//keywords 查询关键字
//wordNum 高亮返回段的字数
//返回 匹配的高亮字符串 如果没有的话,返回为空
private String highLight(String text, String keywords, int wordNum){
QueryParser parser = new QueryParser("title",analyzer);
Query query = null;
try {
query = parser.parse(keywords);
} catch (ParseException e1) {
e1.printStackTrace();
}
Highlighter highlighter = new Highlighter(simpleHTMLFormatter, new QueryScorer(query));
//这个wordNum是从text上截取的长度,不包括format中的字符,但是有时返回的不一定正好是wordNum长度?
highlighter.setTextFragmenter(new SimpleFragmenter(wordNum));
String highLightText;
try {
highLightText = highlighter.getBestFragment(this.analyzer, "title", text);
if (highLightText!=null)
return highLightText;
else
return null; //没有关键字匹配的话,返回为空
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
分享到:
相关推荐
而Highlighter模块则是Lucene提供的一种用于高亮搜索关键词的工具,它能够自动识别出文档中与查询匹配的部分,并对其进行特殊处理,如加粗、变色等,使用户在浏览结果时能够快速定位到相关关键词。 首先,我们要...
lucene-highlighter-3.5.0.jar lucene高亮包
Lucene Highlighter是Lucene库的一个模块,它的主要任务是在搜索结果中识别出与查询相关的片段,并对这些片段进行高亮处理。通过这种方式,用户可以快速地看到哪些关键词在文档中出现了,并且是如何出现的,从而提高...
《深入理解Lucene Highlighter 7.7.2:文本高亮的核心技术》 在信息检索领域,Lucene是一款强大的全文搜索引擎库,被广泛应用于各种信息检索系统中。而Lucene Highlighter作为其核心组件之一,是实现搜索结果高亮...
lucene3.0-highlighter.jar lucene3.0的高亮jar包,从lucene3.0源码中导出来的
《Lucene 3.6.2与Highlighter:搜索引擎中的文本高亮技术》 Lucene是一个高度可定制的全文搜索引擎库,广泛应用于各种Java应用程序中,以实现强大的搜索功能。在3.6.2版本中,Lucene提供了一整套功能,包括索引构建...
在Lucene 4.4.0中,Highlighter已经相当成熟,但仍然存在一些优化空间,比如提高高亮速度,支持更多复杂的查询类型,以及更好地处理多语言文本等。此外,开发者还可以通过自定义组件来扩展其功能,以适应特定的应用...
《深入解析Lucene高亮显示源码:剖析`lucene-highlighter-2.2.0-src.zip`》 Lucene,作为一个开源全文检索库,以其高效、灵活的特点在信息检索领域广泛应用。在处理搜索结果时,为了提升用户体验,通常会采用高亮...
2. **Highlighter类**:通常,高亮器类会接受搜索查询和文档内容作为输入,然后在文档中找到匹配的查询术语,并用特定的样式(如颜色、粗体)标出这些术语。 3. **分词器集成**:为了正确地高亮显示,高亮器需要...
在本教程中,我们将深入探讨Lucene中的高亮显示机制,这是搜索引擎返回结果时非常有用的一项功能,可以突出显示与查询匹配的关键字。在实际应用中,用户通常希望看到搜索词在文档中的确切位置,高亮显示使得这些匹配...
而Highlighter插件则是Lucene中用于高亮显示搜索关键词的部分,它可以帮助用户在大量文本中快速定位和识别搜索结果。 **Lucene.NET** Lucene.NET是一个开源的、高性能的全文搜索引擎库,提供了一整套用于构建搜索...
本话题聚焦于“Lucene多字段查询”和“文字高亮显示”,这两个特性在信息检索和数据挖掘中具有广泛应用。 首先,让我们深入理解“Lucene多字段查询”。在信息检索系统中,用户可能希望根据多个字段来过滤和排序结果...
**SpringBoot+Lucene搜索结果高亮显示** 在现代Web应用程序中,强大的全文搜索引擎功能是不可或缺的,而Apache Lucene正是这样一个高效的、可扩展的开源全文检索库。在这个SpringBoot+Lucene的Demo中,我们将深入...
中文分词IKAnalyzer和高亮highlighter的使用”指出,这个主题将探讨如何在Lucene中应用IKAnalyzer进行中文分词,以及如何使用高亮器(highlighter)来突出搜索结果中的关键词。Lucene是Apache软件基金会的一个开放源...
用于编写Lucene高亮摘要的jar包,版本2.0.0,好用。谁用谁知道~~~~
在这个基于Lucene.NET和Highlighter插件的简单例子中,我们将探讨如何集成这两个工具来对Excel文件进行特殊处理,特别是如何提取摘要并高亮显示关键内容。 首先,了解Lucene.NET的基础知识是必要的。Lucene.NET提供...
lucene-highlighter-3.6.0-sources
Lucene的高亮显示是指在搜索结果中,对匹配查询关键词的部分进行突出显示,通常用不同颜色或者加粗等方式实现。这不仅能够帮助用户迅速识别搜索结果的相关性,还能提高搜索结果的可读性和吸引力。 #### 二、高亮...
而Highlighter.dll则提供了一个重要的补充服务——高亮显示,它能够将查询中的关键词在搜索结果中突出显示,使得用户可以快速识别出与查询相关的关键信息。 Lucene.NET的核心功能包括: 1. **索引创建**:首先,...
在Lucene5中,Highlighter组件为搜索结果提供了一个强大的关键字高亮机制,使得用户可以快速定位到与查询相关的重要部分。 首先,我们要理解Highlighter的基本工作原理。当用户输入查询后,搜索引擎返回匹配的文档...