这几天研究paoding分词器的使用,遇到一个很棘手的问题
在使用庖丁自定义词典的时候,按照网上查的资料,
1.首先自定义一个XXX.dic的文件,以utf-8保存;
2.将自定义词添加到dic\locale下的XXX.dic中;
3.删除.compile文件夹
用如下代码测试分词效果:
String keyword = “中国科技大学”;
Analyzer analyzer = new PaodingAnalyzer();
TokenStream token = analyzer.tokenStream("content", new StringReader(keyword));
TermAttribute attribute = token.getAttribute(TermAttribute.class);
while (token.incrementToken())
{
System.out.println(attribute.term());
}
在不添加任何自定义词的情况下,分词效果是:
中国
科技
大
大学
当我在将自定义的词“中国科技”添加进去后,运行查看分词效果,发现根本没有变化,也就是说添加的分词没有起作用,
然后我重新添加了一个词“中国科”替换上面的词,重新运行,分析效果如下,这个自定义词起作用了:
中国
科技
中国科
大
大学
然后我也将“中国科技大学”,添加了,发现也没起作用,所以很困惑,即有时候添加的分词起作用,有时候不起作用。所以决定研究一下。