Skip to content

CoreDictionary中有一个"机收"的词,导致“手机收邮件”分词结果为“手 机收 邮件”  #567

@sjturan1

Description

@sjturan1

注意事项

请确认下列注意事项:

  • 我已仔细阅读下列文档,都没有找到答案:
  • 我已经通过Googleissue区检索功能搜索了我的问题,也没有找到答案。
  • 我明白开源社区是出于兴趣爱好聚集起来的自由社区,不承担任何责任或义务。我会礼貌发言,向每一个帮助我的人表示感谢。
  • 我在此括号内输入x打钩,代表上述事项确认完毕。

版本号

当前最新版本号是:1.3.4
我使用的版本是:1.3.2

我的问题

在分词的时候发现对一个句子“手机收邮件的问题”进行分词,结果是“手 机收 邮件 的 问题”,即使将“手机”加到CustomDictionary中也还是这样子的结果。尝试了各个分词类:NotionalTokenizer,HanLP.segment(),HanLP.newSegment() 都出现这个问题
定位发现CoreDictionary中有一个"机收"的词,导致“手机收邮件”分词结果为“手 机收 邮件”

复现问题

步骤

  1. 首先……
  2. 然后……
  3. 接着……

触发代码

static void testSeg(){
   Segment segment = HanLP.newSegment().enableCustomDictionary(true);
    String str = "手机收邮件的问题";
    List<Term> res = segment .seg(str);
    StringBuilder sb = new StringBuilder();
    for(Term term:res ){
      sb.append(term.word).append("\t");
    }
    System.out.println(sb.toString());
  }

期望输出

手机 收 邮件 的 问题

实际输出

手 机收 邮件 的 问题

其他信息

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions