solr配置中文分词器

时间:2023-03-08 16:31:27
solr配置中文分词器

配置IK分词器

  • /opt/solr-7.7.1/server/solr-webapp/webapp/WEB-INF/lib目录中加入IK分词器的jar包
  • /opt/solr-7.7.1/server/solr/article_core/conf 文件夹下的 managed-schema文件中配置IK中文分词器
    • 在managed-schema文件中配置ik分词器的配置
         <fieldType name="text_ik" class="solr.TextField">
<analyzer type="index" class="org.wltea.analyzer.lucene.IKAnalyzer" useSmart="false"/>
<analyzer type="query" class="org.wltea.analyzer.lucene.IKAnalyzer" useSmart="false"/>
</fieldType>
*测试分词效果

solr配置中文分词器

* 配置停用词 扩展词 同义词
停止词 的功能是过滤,把“啊”加入到停止词的字典里,比如搜索“你好啊”,solr会过滤掉“啊”,以“你好”去搜索。应该叫过滤词才好。
扩展词 的功能是强制让扩展词字典里的词不被中文分词器分开,叫它自定义词也好理解。
同义词:搜索结果里出现的同义词。如我们输入”还行”,得到的结果包括同义词”还可以”(需修改IK源码,IK同义词暂没实现)。 在`/opt/solr-7.7.1/server/solr-webapp/webapp/WEB-INF/`文件夹下创建classes文件夹
加入
`IKAnalyzer.cfg.xml`
`ext.dic`
` stopword.dic`
三个文件,在stopword.dic中配置你的停用词 ext.dic中配置自定义扩展词 * 在ext.dic中定义小米手机自定义扩展词后 对`小米手机`四个字分词的对比

solr配置中文分词器

上面为自定义`小米手机`扩展词的分词效果,下面为没有定义扩展词的效果

配置smartcn中文分词器

  • 复制

    /opt/solr-7.7.1/contrib/analysis-extras/lucene-libs中的lucene-analyzers-smartcn-7.7.1.jar

    /opt/solr-7.7.1/server/solr-webapp/webapp/WEB-INF/lib

  • 编辑managed-schema文件加入

<!-- 配置smartcn分词器 -->
<fieldType name="text_smartcn" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory"/>
</analyzer>
</fieldType>
  • 测试分词效果

    不推荐使用该分词器