版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ZZh1301051836/article/details/79287963
AnsjSeg使用手册:前往AnsjSeg使用手册
本文介绍Ansj分词工具的使用方法及程序源码示例。
一 下载分词工具
这里所谓的分词工具即两个jar包:ansj_seg-xxx.jar和nlp-lang-xxx.jar,下载地址:下载Ansj分词工具包
二 新建项目
将上面下载的两个jar包导入到项目中。即右键项目——>Build Path ——>Configure Build Path ——>Add External JAR
三 使用方法
可以建立以下类:
import java.util.HashSet;
import java.util.List;
import org.ansj.domain.Result;
import org.ansj.domain.Term;
import org.ansj.splitWord.analysis.ToAnalysis;
/**
* Created by WangLei on 16-12-9.
*/
public class AnsjTest {
public static void test() {
//只关注这些词性的词
HashSet<String> expectedNature = new HashSet<String>() {{
add("n");add("v");add("vd");add("vn");add("vf");
add("vx");add("vi");add("vl");add("vg");
add("nt");add("nz");add("nw");add("nl");
add("ng");add("userDefine");add("wh");
}};
String str = "欢迎使用ansj_seg,(ansj中文分词)在这里如果你遇到什么问题都可以联系我.我一定尽我所能.帮助大家.ansj_seg更快,更准,更自由!" ;
Result result = ToAnalysis.parse(str); //分词结果的一个封装,主要是一个List<Term>的terms
System.out.println(result.getTerms());
List<Term> terms = result.getTerms(); //拿到terms
System.out.println(terms.size());
for(int i=0; i<terms.size(); i++) {
String word = terms.get(i).getName(); //拿到词
String natureStr = terms.get(i).getNatureStr(); //拿到词性
if(expectedNature.contains(natureStr)) {
System.out.println(word + ":" + natureStr);
}
}
}
public static void main(String[] args) {
test();
}
}
正确运行后,结果如下:
四 程序示例
可以直接运行Ansj资源包中的示例程序,资源包中含有运行注意事项。
参考网址:ansj教程—CSDN