https://code.google.com/p/mmseg4j/html
https://github.com/chenlb/mmseg4j-solrgit
做者blog http://blog.chenlb.com/category/mmseg4jgithub
mmseg4j 用 Chih-Hao Tsai 的 MMSeg 算法(http://technology.chtsai.org/mmseg/ )實現的中文分詞器,並實現 lucene 的 analyzer 和 solr 的TokenizerFactory 以方便在Lucene和Solr中使用。算法
MMSeg 算法有兩種分詞方法:Simple和Complex,都是基於正向最大匹配。Complex 加了四個規則過慮。官方說:詞語的正確識別率達到了 98.41%。mmseg4j 已經實現了這兩種分詞算法。tomcat
mmseg4j-solr2.2.0裏面有兩個jar包,分別是mmseg4j-core-1.10.0.jar,mmseg4j-solr-2.2.0.jar.將兩個jar拷貝到
<fieldType name="text_mmseg" class="solr.TextField" positionIncrementGap="100"> <analyzer> <tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="complex" dicPath="dic"/> </analyzer> </fieldType>
這時候在定義field是就能夠使用text_mmseg的fieldType。google
mmseg4j 在 solr 中主要支持兩個參數:mode、dicPath。mode 表示是什麼模式分詞(有效值:simplex、complex、max-word,若是輸入了無效的默認用 max-word。)。dicPath 是詞庫目錄能夠是絕對目錄,也能夠是相對目錄(是相對 solr.home 目錄下的,dic 就會在 solr.home/dic 目錄下找詞庫文件),若是不指定就是默認在 CWD/data 目錄(程序運行當前目錄的data子目錄)下找。code
這個地方所說的solr.home我理解的時候,老是以爲是tomcat/solr 這個目錄。也就是solr核心的根目錄,測試了好久,這裏所說的solr.home是指定core的目錄,默認也就是/tomcat/solr/collection1這個目錄。htm
dicPath支持相對路徑和絕對路徑,上面配置的dic,因此須要在/tomcat/solr/
http://www.sogou.com/labs/dl/r.html
須要轉換才能給mmseg4j來使用