当前位置 : 主页 > 网络推广 > seo >

中文分词Ansj

来源:互联网 收集:自由互联 发布时间:2021-06-16
AnsjSeg使用手册:前往AnsjSeg使用手册 本文介绍Ansj分词工具的使用方法及程序源码示例。 一 下载分词工具 这里所谓的分词工具即两个jar包:ansj_seg-xxx.jar和nlp-lang-xxx.jar,下载地址:下载

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

网友评论