##maven
<repositories>
<repository>
<id>mvn-repo</id>
<url>http://ansjsun.github.io/mvn-repo/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>org.ansj</groupId>
<artifactId>tree_split</artifactId>
<version>1.0.1</version>
</dependency>
</dependencies>
Download jar
https://github.com/ansjsun/mvn-repo/tree/master/org/ansj/tree_split
一个trie树数据结构的分词 没有什么新意.使用方便
词典结构支持read流.字符.文件各种格式调用简单.支持不定参数
这是个例子欢迎大家使用.我用了好久了应该没有bug的
/**
* 词典的构造.一行一个词后面是参数.可以从文件读取.可以是read流.
*/
String dic = "**\t1\tzg\n人名\t2\n**人民\t4\n人民\t3\n孙健\t5\nCSDN\t6\njava\t7\njava学习\t10\n";
Forest forest = Library.makeForest(new BufferedReader(new StringReader(dic)));
/**
* 删除一个单词
*/
Library.removeWord(forest, "**");
/**
* 增加一个新词
*/
Library.insertWord(forest, "**人");
String content = "**人名识别是**人民的一个骄傲.孙健人民在CSDN中学到了很多最早iteye是java学习笔记叫javaeye但是java123只是一部分";
GetWord udg = forest.getWord(content);
String temp = null;
while ((temp = udg.getFrontWords()) != null)
System.out.println(temp + "\t\t" + udg.getParam(1) + "\t\t" + udg.getParam(2));