首页 > 代码库 > 在Solr4.9中使用IKAnalyzer,实现同义词,扩展词库,停顿词的添加

在Solr4.9中使用IKAnalyzer,实现同义词,扩展词库,停顿词的添加

     在使用solr4.9的过程中,使用了IKAnalyzer分词器,其中遇到了不少问题,现在做个记录,以备后续只用。

     首先使用IKAnalyzer是看到群里有人介绍,但是貌似现在IKAnalyzer已经没人更新了。。。不知道是不是真的,先不管这些,下面介绍一下如何在solr中使用它。

     在solr的配置文件schema.xml中添加


<!--IKAnalyzer-->
   <fieldType name="text_ik" class="solr.TextField" positionIncrementGap="100">  
     <analyzer type="index">  
       <tokenizer class="org.wltea.analyzer.lucene.IKAnalyzerSolrFactory"  isMaxWordLength="false"/>  
       <filter class="solr.LowerCaseFilterFactory"/>  
     </analyzer>  
     <analyzer type="query">  
       <tokenizer class="org.wltea.analyzer.lucene.IKAnalyzerSolrFactory"  isMaxWordLength="true"/>       
       <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>  
       <filter class="solr.LowerCaseFilterFactory"/>  
     </analyzer>  
   </fieldType>
    其中的org.wltea.analyzer.lucene.IKAnalyzerSolrFactory类是自己扩展的,一会我会把IKAnalyzer扩展到Jar包传上来。

synonyms.txt在solr_home/didi/conf文件下。

   配置扩展词跟扩展停顿词配置入下:

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_dict">mydict.dic;</entry>

<!--用户可以在这里配置自己的扩展停止词字典-->
 
<entry key="ext_stopwords">stopword.dic;</entry>  
</properties>

jar包下载路径:http://pan.baidu.com/s/1kT1cysn

在Solr4.9中使用IKAnalyzer,实现同义词,扩展词库,停顿词的添加