[其他] 关于IKSegmentation分词 请教一下
iewxcep
2011-04-01
List<String> list = new ArrayList();
list.add("宝马X5"); Dictionary.loadExtendWords(list); StringReader r = new StringReader("速腾电动车生活宝马X5主谈沃蓝达优缺点"); IKSegmentation st = new IKSegmentation(r, false); Lexeme t; while ( (t = st.next()) != null) { System.out.println(t); } 原码是这样的 我想请教一下 为什么宝马X5没有被分出来? |
|
iewxcep
2011-04-01
自己ding一下
|
|
linliangyi2007
2011-04-02
词典不支持中英文混合的,英文和字母会被单独切分
|
|
iewxcep
2011-04-02
linliangyi2007 写道 词典不支持中英文混合的,英文和字母会被单独切分
请教下 有没有办法 可能让词典也支持呢 |
|
linliangyi2007
2011-04-02
iewxcep 写道 linliangyi2007 写道 词典不支持中英文混合的,英文和字母会被单独切分
请教下 有没有办法 可能让词典也支持呢 可以是可以,但是这个严重影响速度的,可以修改中文子分词器部分,让它接受英文字母。 目前的状态时,遇到E文,中文子分词器就跳过了,也根本不会去词典比对。 |
|
iewxcep
2011-04-06
linliangyi2007 写道 iewxcep 写道 linliangyi2007 写道 词典不支持中英文混合的,英文和字母会被单独切分
请教下 有没有办法 可能让词典也支持呢 可以是可以,但是这个严重影响速度的,可以修改中文子分词器部分,让它接受英文字母。 目前的状态时,遇到E文,中文子分词器就跳过了,也根本不会去词典比对。 哦哦 谢谢啦 我改改看 |
|
iewxcep
2011-04-06
linliangyi2007 写道 iewxcep 写道 linliangyi2007 写道 词典不支持中英文混合的,英文和字母会被单独切分
请教下 有没有办法 可能让词典也支持呢 可以是可以,但是这个严重影响速度的,可以修改中文子分词器部分,让它接受英文字母。 目前的状态时,遇到E文,中文子分词器就跳过了,也根本不会去词典比对。 我改了下 用配置文件导入字典文件好用 但是Dictionary.loadModelDictWords(list);这种方法还是不好用 求解 public static void loadModelDictWords(List<String> extWords) { if (extWords != null) { for (String extWord : extWords) { if (extWord != null) { //加载扩展词条到主内存词典中 singleton._ModelDict.fillSegment(extWord.trim().toCharArray()); } } } } |
|
linliangyi2007
2011-04-06
iewxcep 写道 linliangyi2007 写道 iewxcep 写道 linliangyi2007 写道 词典不支持中英文混合的,英文和字母会被单独切分
请教下 有没有办法 可能让词典也支持呢 可以是可以,但是这个严重影响速度的,可以修改中文子分词器部分,让它接受英文字母。 目前的状态时,遇到E文,中文子分词器就跳过了,也根本不会去词典比对。 我改了下 用配置文件导入字典文件好用 但是Dictionary.loadModelDictWords(list);这种方法还是不好用 求解 public static void loadModelDictWords(List<String> extWords) { if (extWords != null) { for (String extWord : extWords) { if (extWord != null) { //加载扩展词条到主内存词典中 singleton._ModelDict.fillSegment(extWord.trim().toCharArray()); } } } } IK没有Dictionary.loadModelDictWords(list)这个方法啊。 之所以能使用API载入,考虑到词典使用数据库管理,而不是文件的。你不能在web界面上直接操作文件吧,呵呵 |
|
iewxcep
2011-04-07
哈 这方法是我自己加的
|