扩展词典
有些词并不是关键词,但是希望被ES用来作为检索的 关键词,可以将这些词加入扩展词典。
停用词典
关键词不想被检索到,可以放入停用词典。
配置
定义扩展词典和停用词典可以修改IK分词器中config目录中
IKAnalyzer.cfg.xml
这个文件。root@redis01:~/es-kibana/ik-8.1.2# cd config/ root@redis01:~/es-kibana/ik-8.1.2/config# ls extra_main.dic extra_single_word.dic extra_single_word_full.dic extra_single_word_low_freq.dic extra_stopword.dic IKAnalyzer.cfg.xml main.dic preposition.dic quantifier.dic stopword.dic suffix.dic surname.dic root@redis01:~/es-kibana/ik-8.1.2/config# vim 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">exc.dic</entry> <!--用户可以在这里配置自己的扩展停止词字典--> <entry key="ext_stopwords"></entry> <!--用户可以在这里配置远程扩展字典 --> <!-- <entry key="remote_ext_dict">words_location</entry> --> <!--用户可以在这里配置远程扩展停止词字典--> <!-- <entry key="remote_ext_stopwords">words_location</entry> --> </properties>
创建
exc.dic
文件root@redis01:~/es-kibana/ik-8.1.2/config# vim exc.dic 矿大 矿大教育
重启
root@redis01:~/es-kibana/ik-8.1.2/config# cd ../ root@redis01:~/es-kibana/ik-8.1.2# cd .. root@redis01:~/es-kibana# docker compose down root@redis01:~/es-kibana# docker compose up -d
POST /_analyze { "analyzer": "ik_max_word", "text":"我是一名矿大学子,矿大教育很棒" }
矿大
、矿大教育
就是添加的关键词了 同样的配置停用词。我们自己一个一个太麻烦了,官方提供了
extra_main.dic
推荐使用
extra_main.dic
、stopword.dic