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>

    *测试分词效果
    web

    • 配置停用词 扩展词 同义词
      中止词 的功能是过滤,把“啊”加入到中止词的字典里,好比搜索“你好啊”,solr会过滤掉“啊”,以“你好”去搜索。应该叫过滤词才好。
      扩展词 的功能是强制让扩展词字典里的词不被中文分词器分开,叫它自定义词也好理解。
      同义词:搜索结果里出现的同义词。如咱们输入”还行”,获得的结果包括同义词”还能够”(需修改IK源码,IK同义词暂没实现)。apache

      /opt/solr-7.7.1/server/solr-webapp/webapp/WEB-INF/文件夹下建立classes文件夹
      加入
      IKAnalyzer.cfg.xml
      ext.dic
      stopword.dic
      三个文件,在stopword.dic中配置你的停用词 ext.dic中配置自定义扩展词app

    • 在ext.dic中定义小米手机自定义扩展词后 对小米手机四个字分词的对比
      webapp

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

配置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/lib3d

  • 编辑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>
  • 测试分词效果code

    不推荐使用该分词器server

相关文章
相关标签/搜索