Ansj中文分词应用时,需要自定义词库,比如城中村,分词成城、中、村,需自定义词库,有时,也需要过滤单词。具体代码如下,可以结合执行结果看代码效果。
1、过滤词库
package csc.ansj;
import org.ansj.domain.Result;
import org.ansj.recognition.impl.FilterRecognition;
import org.ansj.splitWord.analysis.ToAnalysis;
public class AnsjWordFilter {
public static void main(String[] args) {
String str = "不三不四,您好!欢迎使用ansj_seg,深圳有没有城中村这里有宽带吗?(ansj中文分词)在这里如果你遇到什么问题都可以联系我.我一定尽我所能.帮助大家.ansj_seg更快,更准,更自由!" ;
//过滤词性和词汇
FilterRecognition fitler = new FilterRecognition();
//http://nlpchina.github.io/ansj_seg/content.html?name=词性说明
fitler.insertStopNatures("w"); //过滤标点符号词性
fitler.insertStopNatures("null");//过滤null词性
fitler.insertStopNatures("m");//过滤m词性
fitler.insertStopWord("不三不四"); //过滤单词
fitler.insertStopRegex("城.*?"); //支持正则表达式
Result modifResult = ToAnalysis.parse(str).recognit