首先灰常感谢@ansjsun
采用Ansj对文本进行切词,并作简单统计,加入自定义词典代码如下:
private void loadAnsjDic() { List<String> dic = Utils.getDicList(); for (int i = 0; i < dic.size(); i++) { UserDefineLibrary.insertWord(dic.get(i), Utils.USER_DEFINE, 1000); } } }
然后对文本进行切词,代码如下:
List<Term> list = ToAnalysis.paser(content); for (Term term : list) { ......................your business }
通过对ansj和IKAnalyzer进行切词速度对比详情如下:
文本数据量:180w篇新闻
服务器:4个(配置保密)
业务操作:统计分析
其他:自定义词典为4w
耗时对比:
IKAnalyzer 4个小时没有切晚,预估要8个小时
ansj 升级之后2个小时的样子,升级前30分钟