package indi.tiandi.nlp.evaluation.impl; import indi.tiandi.nlp.Seg; import indi.tiandi.nlp.Term; import org.ansj.domain.Result; import org.ansj.library.AmbiguityLibrary; import org.ansj.library.DicLibrary; import org.ansj.splitWord.analysis.ToAnalysis; import org.ansj.util.MyStaticValue; import java.util.ArrayList; import java.util.List; public class AnsjImpl extends Seg { static { // 设置后速度会慢25% 左右 // MyStaticValue.ENV.put(DicLibrary.DEFAULT, AnsjImpl.class.getClassLoader().getResource("ansj/library/default.dic").getPath()); // MyStaticValue.ENV.put(AmbiguityLibrary.DEFAULT, AnsjImpl.class.getClassLoader().getResource("ansj/library/ambiguity.dic").getPath()); } @Override public List<Term> segment(String sentence) { Result result = ToAnalysis.parse(sentence); List<Term> terms = new ArrayList<>(); for (org.ansj.domain.Term term : result) { terms.add(new Term(term.getName())); } return terms; } }