`

查询高亮 lucene 的 Highlighter

阅读更多
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;
   }
分享到:
评论

相关推荐

    Lucene+HighLighter高亮显示实例

    而Highlighter模块则是Lucene提供的一种用于高亮搜索关键词的工具,它能够自动识别出文档中与查询匹配的部分,并对其进行特殊处理,如加粗、变色等,使用户在浏览结果时能够快速定位到相关关键词。 首先,我们要...

    lucene-highlighter-3.5.0.jar lucene高亮包

    lucene-highlighter-3.5.0.jar lucene高亮包

    lucene-highlighter-3.4.0.jar

    Lucene Highlighter是Lucene库的一个模块,它的主要任务是在搜索结果中识别出与查询相关的片段,并对这些片段进行高亮处理。通过这种方式,用户可以快速地看到哪些关键词在文档中出现了,并且是如何出现的,从而提高...

    lucene-highlighter-7.7.2.zip_lucene

    《深入理解Lucene Highlighter 7.7.2:文本高亮的核心技术》 在信息检索领域,Lucene是一款强大的全文搜索引擎库,被广泛应用于各种信息检索系统中。而Lucene Highlighter作为其核心组件之一,是实现搜索结果高亮...

    lucene3.0-highlighter.jar

    lucene3.0-highlighter.jar lucene3.0的高亮jar包,从lucene3.0源码中导出来的

    lucene3.6.2及highlighter jar包

    《Lucene 3.6.2与Highlighter:搜索引擎中的文本高亮技术》 Lucene是一个高度可定制的全文搜索引擎库,广泛应用于各种Java应用程序中,以实现强大的搜索功能。在3.6.2版本中,Lucene提供了一整套功能,包括索引构建...

    lucene-highlighter-4.4.0.jar

    在Lucene 4.4.0中,Highlighter已经相当成熟,但仍然存在一些优化空间,比如提高高亮速度,支持更多复杂的查询类型,以及更好地处理多语言文本等。此外,开发者还可以通过自定义组件来扩展其功能,以适应特定的应用...

    lucene-highlighter-2.2.0-src.zip

    《深入解析Lucene高亮显示源码:剖析`lucene-highlighter-2.2.0-src.zip`》 Lucene,作为一个开源全文检索库,以其高效、灵活的特点在信息检索领域广泛应用。在处理搜索结果时,为了提升用户体验,通常会采用高亮...

    lucene.net以及高亮的DLL文件

    2. **Highlighter类**:通常,高亮器类会接受搜索查询和文档内容作为输入,然后在文档中找到匹配的查询术语,并用特定的样式(如颜色、粗体)标出这些术语。 3. **分词器集成**:为了正确地高亮显示,高亮器需要...

    一步一步跟我学习lucene(11)---lucene搜索之高亮显示highlighter

    在本教程中,我们将深入探讨Lucene中的高亮显示机制,这是搜索引擎返回结果时非常有用的一项功能,可以突出显示与查询匹配的关键字。在实际应用中,用户通常希望看到搜索词在文档中的确切位置,高亮显示使得这些匹配...

    自己修改的基于lucene.net 2.9和highlighter插件的简单例子

    而Highlighter插件则是Lucene中用于高亮显示搜索关键词的部分,它可以帮助用户在大量文本中快速定位和识别搜索结果。 **Lucene.NET** Lucene.NET是一个开源的、高性能的全文搜索引擎库,提供了一整套用于构建搜索...

    lucene 多字段查询+文字高亮显示

    本话题聚焦于“Lucene多字段查询”和“文字高亮显示”,这两个特性在信息检索和数据挖掘中具有广泛应用。 首先,让我们深入理解“Lucene多字段查询”。在信息检索系统中,用户可能希望根据多个字段来过滤和排序结果...

    SpringBoot+Lucene搜索结果高亮显示Demo

    **SpringBoot+Lucene搜索结果高亮显示** 在现代Web应用程序中,强大的全文搜索引擎功能是不可或缺的,而Apache Lucene正是这样一个高效的、可扩展的开源全文检索库。在这个SpringBoot+Lucene的Demo中,我们将深入...

    lucene第一步---5.中文分词IKAnalyzer和高亮highlighter的使用

    中文分词IKAnalyzer和高亮highlighter的使用”指出,这个主题将探讨如何在Lucene中应用IKAnalyzer进行中文分词,以及如何使用高亮器(highlighter)来突出搜索结果中的关键词。Lucene是Apache软件基金会的一个开放源...

    Lucene-highlighter-2.0.0 jar包

    用于编写Lucene高亮摘要的jar包,版本2.0.0,好用。谁用谁知道~~~~

    基于lucene.net 和highlighter插件的简单例子(对excel特殊处理)

    在这个基于Lucene.NET和Highlighter插件的简单例子中,我们将探讨如何集成这两个工具来对Excel文件进行特殊处理,特别是如何提取摘要并高亮显示关键内容。 首先,了解Lucene.NET的基础知识是必要的。Lucene.NET提供...

    lucene-highlighter-3.6.0-sources

    lucene-highlighter-3.6.0-sources

    lucene高亮显示

    Lucene的高亮显示是指在搜索结果中,对匹配查询关键词的部分进行突出显示,通常用不同颜色或者加粗等方式实现。这不仅能够帮助用户迅速识别搜索结果的相关性,还能提高搜索结果的可读性和吸引力。 #### 二、高亮...

    Lucene.net的dll文件包含Highlighter.dll在一起

    而Highlighter.dll则提供了一个重要的补充服务——高亮显示,它能够将查询中的关键词在搜索结果中突出显示,使得用户可以快速识别出与查询相关的关键信息。 Lucene.NET的核心功能包括: 1. **索引创建**:首先,...

    Lucene5学习之Highlighte关键字高亮

    在Lucene5中,Highlighter组件为搜索结果提供了一个强大的关键字高亮机制,使得用户可以快速定位到与查询相关的重要部分。 首先,我们要理解Highlighter的基本工作原理。当用户输入查询后,搜索引擎返回匹配的文档...

Global site tag (gtag.js) - Google Analytics