目前Ik分词器相对来说是中文分词中用的相对较多的,比较流行的一种分词器了,与solr组合相当完美的一种中文分词器了,其他的庖丁和solr自带的分词器也相对较多,下面我主要说一下我在使用solr和Ik分词器做搜索时遇到的问题。IK分词器对中文分词是按照词组分的,效果如下
下面是英文字母和数字组合分词的效果
相信看到这个效果后,做搜索的朋友会想到,如果我的id是uuid或者某个对象的唯一属性是由数字或者字母组合成的,那么搜索出来的结果就会出现多个了,另外这些组合中如果含有_ +等特殊字符是不进行拆分的,直接忽略这些特殊字符跟上面效果一样。接下来我们看一下不分词的效果
上面不分词的效果是将schema.xml中的field的类型改为string了,string会将你输入的词组当作整体不拆分。
此时你在solrj客户端搜索时可以搜索到你想搜索的结果,但是写的程序就搜索不出来。程序搜索可能报空指针异常,这个时候你会很纠结为什么,我当时就纠结了很久,我使用facet进行查询时,查询条件都是正确的,但是就是搜索不出结果,最后发现在使用程序时多了引号导致的,之前使用ik分词时使用了引号将搜索的关键字引起来了,能搜索出结果,但是由于分词的原因将field类型改为string之后就出现了该问题。解决该问题的思路就是将你使用程序搜索的url和使用solrj客户端搜索的url对比,哪个能搜索出你要的结果就用哪个,如果你细心,你会发现在solrj客户端中字段与值加上引号和不加引号的结果一样,但是到了程序中就错了,此时你就该核对你的URL了,其中url中可能会出现%3A %22 %27等常见的字符,这个你使用URL编码冒号、引号就知道了,是因为你发送请求时,到了服务器端,服务器会将这些特殊字符进行转义,+号会转成空格,确定你的程序的URL与solrj客户端的URL地址一致问题就应该可以解决了,程序中一般是多了引号。
这个问题只是我在开发中遇到的问题,有不同见解的或者更好的解决方案的望分享一下,有更好的意见的请提出,谢谢。
相关推荐
本教程将详细解释如何在Solr中安装和使用IK分词器。 首先,让我们理解一下什么是分词器。在文本检索和自然语言处理领域,分词是将连续的文本分解成有意义的词语单元(如单词或短语)的过程。对于中文,由于没有明显...
Solr是中国最流行的全文搜索引擎框架Apache Lucene的一个扩展,它提供了高级的搜索功能,而IK分词器则是Solr在处理中文文本时的关键组件。"solr ik分词器 6.6.1版本"指的是该分词器的一个特定稳定版本,针对的是Solr...
在Solr6.0版本中,IK分词器的使用对于提升搜索准确性和效率至关重要。下面我们将深入探讨如何在Solr6.0中集成并使用IK分词器。 **IK分词器简介** IK分词器由Java编写,旨在提高对中文文本的分词效果。它支持多种...
将这个JAR文件添加到Solr的lib目录下,可以让Solr使用IK分词器进行中文分词处理。 **深蓝词库转换.exe** 深蓝词库转换工具可能是用来将词库文件转换成适合IK Analyzer或其他分词器使用的格式。词库对于分词器来说...
IK分词器,支持solr6.60高版本,支持智能分词和细粒度分词,经本人测试可以使用的,支持高版本,智能分词用IKCrudeAnalyzer
solr 中文查询分词器,把一串字符分作多个词语进行查询
Solr全文检索与IK分词器的整合是构建高效中文搜索引擎的关键步骤。Solr,作为Apache Lucene的一个开源搜索服务器,提供了强大的全文检索、高级索引和搜索功能。而IK分词器(Intelligent Chinese Analyzer for Solr)...
这个jar包是重新编译过后的 可以使用useSmart粒度分词
标题和描述提到的是针对Solr 5.5和Solr 6.0版本的IK分词器支持的相关资料,这意味着这些资源可能包括配置文件、文档、示例代码或者更新日志,帮助用户在这些特定版本的Solr中集成和优化IK分词器。 首先,让我们来看...
当我们谈论"IK分词solr5.0.0"时,我们关注的是如何在Solr 5.0.0版本中集成和使用IK分词器。 首先,IK分词器全称为“Intelligent Chinese Analyzer for Solr”,由北京大学的开源社区开发,旨在提供对中文文本更精确...
在solr使用 IKAnalyzer 分词时,自带的字典比较熟,不适合精确拆分。可以使用sougou分词,还是比较好用的。
通过研究"solr5的ik中文分词器源码",开发者不仅可以了解IK分词器的内部工作机制,还可以根据实际需求进行定制化开发,提升Solr在中文文本处理中的效能。同时,这也是一个学习自然语言处理和搜索引擎技术的好起点。
IK分词器(Intelligent Chinese Analyzer for Solr)是为Solr设计的一款高性能的中文分词组件,尤其适用于海量数据的分词处理。在本主题中,我们将深入探讨如何在Solr中导入并使用IK分词器。 一、IK分词器介绍 IK...
《Solr 4.10.3与IK分词器在Linux环境下的部署与应用》 Solr,作为Apache Lucene的一个开源搜索服务器,被广泛应用于企业级的全文检索服务。它提供了高效的索引和查询功能,支持多字段、多语言、多类型的数据处理。...
文件`ikanalyzer-solr5`可能是一个包含IK分词器的Solr插件包,用于Solr 5版本,虽然与标题中的Solr 6.5不完全匹配,但在实际应用中,IK分词器的版本通常与Solr版本保持一致,以确保最佳兼容性和性能。如果需要在Solr...
2. **Solr7.0集成IK分词器.docx**:这是一份详细的文档,指导用户如何在 Solr 7 中配置和使用 ik 分词器。它会涵盖安装步骤、配置参数设置以及可能出现的问题及其解决方案,对于初次使用者来说非常有价值。 3. **ik...
Ik分词器是Solr中一个非常重要的组件,尤其对于中文处理,它是不可或缺的一部分。Ik分词器全称为Intelligent Chinese Analyzer,是由国内开发者基于Lucene开发的一款高性能的中文分词工具,专门针对中文的特性进行了...
Solr6.6.0中的IK分词器是用于对中文文本进行精细化分词的工具,它是基于Apache Lucene的开源搜索引擎项目Solr的一个插件。这个插件的主要任务是将中文句子分解成一系列有意义的词语,以便于索引和搜索。在Solr中,...
标题中的“solr配置IK分词器Jar包和配置文件”意味着我们需要将IK分词器的相关库文件(Jar包)添加到Solr的类路径中,并且对Solr的配置文件进行适当的修改,以便Solr知道如何使用这个分词器。 首先,你需要下载IK...