您的位置:首页 > 其它

全文检索引擎Solr系列——整合中文分词组件IKAnalyzer

2016-03-18 17:53 411 查看
IK Analyzer是一款结合了词典和文法分析算法的中文分词组件,基于字符串匹配,支持用户词典扩展定义,支持细粒度和智能切分,比如:
张三说的确实在理


智能分词的结果是:
张三 |  说的 |  确实 |  在理


最细粒度分词结果:
张三 |  三 |  说的 |  的确 |  的 |  确实 |  实在 |  在理


整合IK Analyzer比mmseg4j要简单很多,下载解压缩IKAnalyzer2012FF_u1.jar放到目录:E:\solr-4.8.0\example\solr-webapp\webapp\WEB-INF\lib,修改配置文件schema.xml,添加代码:

查询采用IK自己的最大分词法,索引则采用它的细粒度分词法


此时就算配置完成了,重启服务:java -jar start.jar,来看看IKAnalyzer的分词效果怎么样,打开Solr管理界面,点击左侧的Analysis页面



默认分词器进行最细粒度切分。IKAnalyzer支持通过配置IKAnalyzer.cfg.xml 文件来扩充您的与有词典以及停止词典(过滤词典),只需把IKAnalyzer.cfg.xml文件放入class目录下面,指定自己的词典mydic.dic

事实上前面的FieldType配置其实存在问题,根据目前最新的IK版本IK Analyzer
2012FF_hf1.zip,索引时使用最细粒度分词,查询时最大分词(智能分词)实际上是不生效的。

据作者linliangyi说,在2012FF_hf1这个版本中已经修复,经测试还是没用,详情请看此贴


解决办法:重新实现IKAnalyzerSolrFactory

重新编译后更新jar文件,更新schema.xml文件:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: