paoding的分词使用
paoding下载
?
http://code.google.com/p/paoding/
?
?
?
paoding分词的默认配置
paoding-analysis-default.properties
配置全局的规则,{字典目录,切词规则}
?
paoding分词的字典指定
paoding-dic-home.properties
paoding自己的字典文件paoding/dic
x-noise-*.dic是过滤字典,存放分词时过滤词和字;其他dic是定义一个完整的词。
?
paoding分词的切词策略
paoding-knives.properties
?
?
paoding/dic/.compiled目录是生成二进制字典的目录,每次字典,过滤字典添加新词的时候,需要删除,运行paoding分词的时候会重新生成新的字典。
?
net.paoding.analysis.dictionary包目录维护字典的类
net.paoding.analysis.knife包目录定义了一些分词策略
?
?
net.paoding.analysis.knife.FileDictionaries
程序分词时,主要加载的字典
?
?
//分词private String[] wordSegmentation(String text) { //应该用一个全局变量,可以复用 Analyzer analyzer = new PaodingAnalyzer();List<String> tags = new ArrayList<String>(); TokenStream tokenStream = analyzer.tokenStream("text",new StringReader(text));CharTermAttribute termAtt = (CharTermAttribute) tokenStream.getAttribute(CharTermAttribute.class);try {while (tokenStream.incrementToken()) {tags.add(termAtt.toString());}} catch (IOException e) {e.printStackTrace();}String[] asdfasdf = new String[tags.size()];tags.toArray(asdfasdf);return asdfasdf;}?
?
?
?
?