当我使用 IKAnalyzer 作为中文分词时,我遇到了一个问题
我只想将自己的扩展词加载到字典中,但它似乎不起作用:
代码如下:
Dictionary dic = Dictionary.getInstance();
Dictionary.loadExtendWords(Arrays.asList("abc"));
Dictionary.loadExtendWords(Arrays.asList("abc2013"));
Dictionary.loadExtendWords(Arrays.asList("学校2013"));
String testString = "test abc abc2013 Chineses:学校2013";
Analyzer analyzer = new IKAnalyzer(true);
TokenStream ts = analyzer.tokenStream("demo", new StringReader(testString));
ts.reset();
StringBuilder sb = new StringBuilder();
String t = null;
while (ts.incrementToken()) {
t = ts.getAttribute(CharTermAttribute.class).toString();
sb.append(t).append(" ");
System.out.print(t + "|");
}
ts.end();
ts.close();
输出为“test|abc|abc2013|chineses|School|2013|”,可以看到自定义词“School2013”不起作用。
IKAnalyzer 似乎对中英文混用没用。