1、IK配置文件
ik配置文件地址:
es/plugins/ik/config
目錄下
IKAnalyzer.cfg.xml:用來配置自定義詞庫
main.dic:ik原生內置的中文詞庫,總共有27萬多條,只要是這些單詞,都會被分在一起
quantifier.dic:放了一些單位相關的詞
suffix.dic:放了一些后綴
surname.dic:中國的姓氏
stopword.dic:英文停用詞
2、ik原生最重要的兩個配置文件
main.dic:包含了原生的中文詞語,會按照這個里面的詞語去分詞
stopword.dic:包含了英文的停用詞
一般像停用詞,會在分詞的時候,直接被干掉,不會建立在倒排索引中
3、自定義詞庫
(1)自己建立詞庫:每年都會涌現一些特殊的流行詞,網紅,藍瘦香菇,喊麥,鬼畜,一般不會在ik的原生詞典里,需要自己補充自己的最新的詞語,到ik的詞庫里面去。
IKAnalyzer.cfg.xml配置內容如下:
<properties>
<comment>IK Analyzer 擴展配置</comment>
<!--用戶可以在這里配置自己的擴展字典 -->
<entry key="ext_dict">custom/mydict.dic;custom/single_word_low_freq.dic</entry>
<!--用戶可以在這里配置自己的擴展停止詞字典-->
<entry key="ext_stopwords">custom/ext_stopword.dic</entry>
<!--用戶可以在這里配置遠程擴展字典 -->
<!-- <entry key="remote_ext_dict">words_location</entry> -->
<!--用戶可以在這里配置遠程擴展停止詞字典-->
<!-- <entry key="remote_ext_stopwords">words_location</entry> -->
</properties>
可知,我們只需要補充我們的新詞語到custom/mydict.dic
或custom/single_word_low_freq.dic
這兩個字典文件其中之一即可。
一般都指定到custom/mydict.dic
這里。
將停用詞(如:了,的,呢等,但是這些基本的IK已經給我們都寫了,如有補充,寫到這里即可)指定到custom/ext_stopword.dic
里
補充完后,重啟ES服務,然后進行如下測試
GET _analyze
{
"text": "藍瘦香菇",
"analyzer": "ik_max_word"
}
若有興趣,歡迎來加入群,【Java初學者學習交流群】:458430385,此群有Java開發人員、UI設計人員和前端工程師。有問必答,共同探討學習,一起進步!
歡迎關注我的微信公眾號【Java碼農社區】,會定時推送各種干貨:
qrcode_for_gh_577b64e73701_258.jpg