IK分词器在加载词典时, 词典中的大小写字符加载到内存时一律变为小写, 但是在分词时大小写是不会转换的, 所以就有以下情况发生:
当词典中有"HL定理", 对"HL定理的应用"分词时是不能分出"HL定理"的,
处理办法:在讲要分词的句子输入分词器前, 先将所有的大些字母转化为小写, 这样分词出来的就是 "hl定理"
工作中利用ik对 文章里的字符做分词 然后返回分词后的字符 进行关键字替换
最后处理后的字符 发下文章里的全角都被ik改成了半角,英文字母如果是大写的也被ik改成了小写 ,这是ik分词内部类规则的一个特性一般用来做搜索的时候用的,这个没错,但是在我的需求里用不到这个特性所以我必须把它去掉
打开ik的源码包org.wltea.analyzer.core.CharacterUtil类里
有个方法 叫regularize 该方法的作用是进行字符规格化(全角转半角,大写转小写处理)
显然把这个方法注释就好了 ,并且去掉相关引用地方的该方法调用
这样ik分词出来的字符就保留原先的完整性了