在不需要标注词性的情况下,IKAnalyzer这个工具能实现较好的分词效果。下载地址:https://code.google.com/p/ik-analyzer/

下载下来以后能看到有个pdf文档告诉该如何使用,不过作者貌似没有提到需要用到lucene包,这个jar包可以从这里下载:http://grepcode.com/snapshot/repo1.maven.org/maven2/org.apache.lucene/lucene-core/3.6.1

一个完整的结构如下:

其中ext.dic和chinese_stopword.dic都是自定义的,这里ext.dic用的是百度百科的词条【496万个词条】,需要在xml里面添加dic的位置。

<?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">ext.dic;</entry> <!--用户可以在这里配置自己的扩展停止词字典--><entry key="ext_stopwords">stopword.dic;chinese_stopword.dic</entry> </properties>

添加好字典后,就可以写个程序来测试效果了,测试用例如下:

李天一,现名李冠丰。著名歌唱家李双江和知名歌唱家梦鸽之子。根据司法机关公布资料显示,李天一出生于1996年4月。曾就读北京海淀区中关村第三小学、人民大学附中、美国Shattuck-St. Mary's School(沙特克圣玛丽学院)冰球学校。2011年9月6日,因与人斗殴被拘留教养1年。2012年9月19日,李天一被解除教养。2013年2月22日,因涉嫌轮奸案被刑事拘留,后因可查资料显示未成年,移交少管所。3月7日,中央电视台新闻中心官方微博发布了一条消息,称李天一因涉嫌强奸罪,已被检察机关批捕。2013年9月,李双江一篇旧文证实李天一成年。


测试程序如下:

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.StringReader;
import org.apache.lucene.analysis.TokenStream;
import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
import org.wltea.analyzer.core.IKSegmenter;
import org.wltea.analyzer.core.Lexeme;
import org.wltea.analyzer.lucene.IKAnalyzer;public class IKAnalyzerTest {public static void main(String[] args) throws IOException {String filePath = "test.txt";String news=new String();BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(filePath), "UTF8"));String str;while ((str = in.readLine()) != null) {news+=str;}in.close();System.out.println(news);IKAnalyzer analyzer = new IKAnalyzer(true);StringReader reader = new StringReader(news);TokenStream ts = analyzer.tokenStream("", reader);CharTermAttribute term = ts.getAttribute(CharTermAttribute.class);while(ts.incrementToken()){System.out.print(term.toString()+"|");}analyzer.close();reader.close();System.out.println();StringReader re = new StringReader(news);IKSegmenter ik = new IKSegmenter(re,true);Lexeme lex = null;while((lex=ik.next())!=null){System.out.print(lex.getLexemeText()+"|");}}
}

其中上面第一个没有调用lucene库,第二个是调用lucene库进行分词,两者区别貌似不大。

得到结果如下:

?李天一,现名李冠丰。著名歌唱家李双江和知名歌唱家梦鸽之子。根据司法机关公布资料显示,李天一出生于1996年4月。曾就读北京海淀区中关村第三小学、人民大学附中、美国Shattuck-St. Mary's School(沙特克圣玛丽学院)冰球学校。2011年9月6日,因与人斗殴被拘留教养1年。2012年9月19日,李天一被解除教养。2013年2月22日,因涉嫌轮奸案被刑事拘留,后因可查资料显示未成年,移交少管所。3月7日,中央电视台新闻中心官方微博发布了一条消息,称李天一因涉嫌强奸罪,已被检察机关批捕。2013年9月,李双江一篇旧文证实李天一成年。啊
加载扩展词典:ext.dic
加载扩展停止词典:stopword.dic
加载扩展停止词典:chinese_stopword.dic
李天一|现名|李冠|丰|著名|歌唱家|李双|江和|知名|歌唱家|梦鸽|之子|根据|司法机关|公布|资料|显示|李天一|出生于|1996年|4月|就读|北京|海淀区|中关村第三小学|人民大学|附中|美国|shattuck-st.|mary|s|school|沙|特克|圣玛丽学院|冰球|学校|2011年|9月6日|与人|斗殴|拘留|教养|1年|2012年|9月19日|李天|一被|解除|教养|2013年|2月22日|因涉嫌|轮奸案|刑事拘留|可查|资料|显示|未成年|移交|少管所|3月7日|中央电视台|新闻中心|官方|微博|发布|一条|消息|称|李天一|因涉嫌|强奸罪|已被|检察机关|批捕|2013年|9月|李双江|一篇|旧文|证实|李天一|成年|
李天一|现名|李冠|丰|著名|歌唱家|李双|江和|知名|歌唱家|梦鸽|之子|根据|司法机关|公布|资料|显示|李天一|出生于|1996年|4月|就读|北京|海淀区|中关村第三小学|人民大学|附中|美国|shattuck-st.|mary|s|school|沙|特克|圣玛丽学院|冰球|学校|2011年|9月6日|与人|斗殴|拘留|教养|1年|2012年|9月19日|李天|一被|解除|教养|2013年|2月22日|因涉嫌|轮奸案|刑事拘留|可查|资料|显示|未成年|移交|少管所|3月7日|中央电视台|新闻中心|官方|微博|发布|一条|消息|称|李天一|因涉嫌|强奸罪|已被|检察机关|批捕|2013年|9月|李双江|一篇|旧文|证实|李天一|成年|


可以看到有些词分出来不是很准确,比如上面红色标记的部分,这里采用了智能匹配,但是依然出错了,分出来的词甚至不在词表中。看来还是ANSJ分词比较靠谱。

使用IKAnalyzer进行中文分词相关推荐

  1. Lucene和ikanalyzer(中文分词器)的简单使用增删改查(提供maven依赖)

    --于2020.08.28从jar包更新为了maven依赖 什么是Lucene?  Lucene是apache下的一个开放源代码的全文检索引擎工具包,通过它可以实现全文检索. 什么是全文检索(Full ...

  2. IKAnalyzer - 开源中文分词器

    https://code.google.com/archive/p/ik-analyzer/ 源项目作者 linliangyi2007@gmail.com 已不再维护,个人可以fork项目进行修改,g ...

  3. IKAnalyzer实现中文分词

    1.介绍 IK Analyzer 是一个开源的,基于 java 语言开发的轻量级的中文分词工具包.从 2006年 12 月推出 1.0 版开始, IKAnalyzer 已经推出了 4 个大版本.最初, ...

  4. spingboot + IKAnalyzer 实现中文分词

    废话不多说,直接上代码. 1.pom.xml 文件 <dependency><groupId>com.janeluo</groupId><artifactId ...

  5. IKAnalyzer进行中文分词和去停用词

    最近学习主题模型pLSA.LDA,就想拿来试试中文.首先就是找文本进行切词.去停用词等预处理,这里我找了开源工具IKAnalyzer2012,下载地址:(:(注意:这里尽量下载最新版本,我这里用的IK ...

  6. Solr之——配置中文分词IKAnalyzer和拼音分词pinyinAnalyzer

    转载请注明出处:http://blog.csdn.net/l1028386804/article/details/70200378 在上一篇博文<CentOS安装与配置Solr6.5>中, ...

  7. python 分词工具训练_中文分词入门和分词工具汇总攻略

    [注意]如果寻找分词和文本分析软件,为了完成内容分析和其他文本研究任务,直接使用集搜客分词和文本分析软件就可以了.本文是为了讲解集搜客分词和文本分析的实现原理,是给产品设计者和开发者看的. 最近在整理 ...

  8. Lucene全文检索_分词_复杂搜索_中文分词器

    1 Lucene简介 Lucene是apache下的一个开源的全文检索引擎工具包. 1.1 全文检索(Full-text Search)  1.1.1 定义 全文检索就是先分词创建索引,再执行搜索的过 ...

  9. ElasticSearch:为中文分词器增加对英文的支持(让中文分词器可以处理中英文混合文档)(转)

    本文地址,需转载请注明出处: http://blog.csdn.net/hereiskxm/article/details/47441911 当我们使用中文分词器的时候,其实也希望它能够支持对于英文的 ...

最新文章

  1. NIO - Scatter/Gather
  2. IE6左右边框断线现象
  3. 【转】程序员健康建议
  4. java学习笔记_Java学习笔记day11
  5. ubuntu服务器ssh登录密码修改,Ubuntu-18.04 下修改root用户密码,安装SSH服务,允许root用户远程登录,安装vsftp服务器...
  6. BI报表系统在银行业的应用
  7. java if ( 常量==变量)_Java常量、变量和运算符
  8. mysql5.6.38 设置密码_Percona Server MySQL 5.6.38修改root密码(忘记root密码)
  9. 深度学习模型部署技术方案
  10. Keil4工程用Keil5继续开发,编译报错问题探究
  11. 【BLE】蓝牙Profile
  12. http.Request
  13. 利用Hyperledger fabric-config库进行通道配置更新
  14. php mysql英文资料,Sams Teach Yourself PHP MySQL 英文CHM下载_PHP教程
  15. 寒假自主学习项目一 - 链表(6、插入节点)
  16. 英语专业 计算机语言学,SFU专业合集 | 语言学(Linguistic)专业一览
  17. 虚拟机 高性能服务器,3种提高虚拟机性能并最大化效率的方法
  18. 恶人传时长_如何评价韩国电影《恶人传》?
  19. 10行代码教你用Python扫描Excel表格,自动生成条形码!
  20. 微信公众号JAVA后台对接最全面

热门文章

  1. VC 开机自动启动程序代码
  2. java经典题之冒泡排序
  3. 关闭Windows Server IE增强安全配置 解决Windows服务器无法上网的问题
  4. 【WIN10】如何关闭右下角输入法的“拼”字
  5. VQLS:变分量子算法解线性方程组
  6. 以太网交换机可以家用吗_工业交换机的作用是什么?工业交换机可以家用吗?...
  7. C++后端开发(校招实习生)学习路线
  8. Python三维地址建模教程【Gempy】
  9. 简介DefaultView
  10. Lyx使用对中文进行编译