使用 Lucene怎么实现一个中文分词器


这期内容当中小编将会给大家带来有关使用 Lucene怎么实现一个中文分词器,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
什么是中文分词器学过英文的都知道,英文是以单词为单位的,单词与单词之间以空格或者逗号句号隔开。而中文的语义比较特殊,很难像英文那样,一个汉字一个汉字来划分。所以需要一个能自动识别中文语义的分词器。
StandardAnalyzerLucene自带的中文分词器单字分词:就是按照中文一个字一个字地进行分词。如:“我爱中国”,
效果:“我”、“爱”、“中”、“国”。
CJKAnalyzer
二分法分词:按两个字进行切分。如:“我是中国人”,效果:“我是”、“是中”、“中国”“国人”。上边两个分词器无法满足需求。
使用中文分词器IKAnalyzerIKAnalyzer继承Lucene的Analyzer抽象类,使用IKAnalyzer和Lucene自带的分析器方法一样,将Analyzer测试代码改为IKAnalyzer测试中文分词效果。如果使用中文分词器ik-analyzer,就在索引和搜索程序中使用一致的分词器ik-analyzer。
使用luke测试IK中文分词
(1) 香港云主机打开Luke,不要指定Lucene目录。否则看不到效果(2)在分词器栏,手动输入IkAnalyzer的全路径org.wltea.analyzer.lucene.IKAnalyzer
改造代码,使用IkAnalyzer做分词器添加jar包

修改分词器代码
// 创建中文分词器Analyzer analyzer = newIKAnalyzer();

扩展中文词库
拓展词库的作用:在分词的过程中,保留定义的这些词1在src或其他source目录下建立自己的拓展词库,mydict.dic文件,例如:2在src或其他source目录下建立自己的停用词库,ext_stopword.dic文件停用词的作用:在分词的过程中,分词器会忽略这些词。3在src或其他source目录下建立IKAnalyzer.cfg.xml,内容如下(注意路径对应):“1.0”encoding=“UTF-8”?>nbsp;propertiesSYSTEM”http://java.sun.com/dtd/properties.dtd”>IK Analyzer 扩展配置“ext_dict”>mydict.dic“ext_stopwords”>ext_stopword.dic上述就是小编为大家分享的使用 Lucene怎么实现一个中文分词器了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注开发云行业资讯频道。

相关推荐: 使用Qt怎么自绘一个饼图

这期内容当中小编将会给大家带来有关使用Qt怎么自绘一个饼图,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。qtcharts:qt5.7之后才开源的模块,支持绘制各种图标,并且功能相当丰富,但是可扩展性差,如果自己想高度定制,比…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 07/26 14:32
下一篇 07/26 17:23

相关推荐