关于solr6.6搭建与配置可以参考 solr6.6初探之配置篇 在这里我们探讨一下分词的配置
一.关于分词
1.分词是指将一个中文词语拆成若干个词,提供搜索引擎进行查找,比如说:北京大学 是一个词那么进行拆分可以得到:北京与大学,甚至北京大学整个词也是一个语义
2.市面上常见的分词工具有 IKAnalyzer MMSeg4j Paoding等,这几个分词器各有优劣,大家可以自行研究
在这篇文章,我先演示IKAnalyzer分词器 下载:IKAnalyzer
二 拷贝相关Jar包与配置
1.下载得到后有如下文件:
ext.dic是分词文件,这个是我们常操作的文件,可以在这个里面配置我们自己定义的词汇
IKAnalyzer.cfg.xml是配置查找词典的位置
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd"> <properties> <comment>IK Analyzer 扩展配置</comment> <!--用户可以在这里配置自己的扩展字典 --> <entry key="ext_dict">ext.dic;</entry> <!--用户可以在这里配置自己的扩展停止词字典--> <entry key="ext_stopwords">stopword.dic;</entry> </properties>
2. 将配置文件和词典拷贝至${solr.home}/server/solr-webapp/webapp/WEB-INF/classes 下,没有classes文件请手动创建
3.将jar文件拷贝至${solr.home}/server/solr-webapp/webapp/WEB-INF/libs下
4.在 ${solr.home}${core.home}confmanaged-schema 文件前增加如下配置
<!-- IK分词器 --> <fieldType name="text_ik" class="solr.TextField"> <analyzer type="index"> <tokenizer class="org.apache.lucene.analysis.ik.IKTokenizerFactory" useSmart="true"/> </analyzer> <analyzer type="query"> <tokenizer class="org.apache.lucene.analysis.ik.IKTokenizerFactory" useSmart="true"/> </analyzer> </fieldType>
三:验证分词
1.启动solr6.6
2.请在如下界面选择测试分词效果:
注意filedType一定选择我们配置的分词类型text_ik
附上ext.dic 可以看到我在对诛仙2进行分词时得到 诛仙和诛仙2的分解结果,注意一行一个分词