jieba.NET icon indicating copy to clipboard operation
jieba.NET copied to clipboard

自定义词不起作用?

Open kingwa5 opened this issue 7 years ago • 4 comments

        var segmenter = new JiebaSegmenter();
        segmenter.LoadUserDict(JIEBA_STOCK_DIC_FN);
        var segments = segmenter.Cut("国办:促进仿制药研发减按15%的税率征收企业所得税 景峰医药封涨停");

其中 "仿制药" "景峰医药" 我在上面的JIEBA_STOCK_DIC_FN文件中已经定义了,但上面分词 还是把"仿制药"" 分成了 "仿制"和"药" ,把"景峰医药" 分成了"景峰","医药" 两个词, 请问要如何处理?

  另外例子中的精确模式和新词识别 看不出有啥区别,是笔误吗?

kingwa5 avatar Apr 08 '18 09:04 kingwa5

@kingwa5 自定义词典这里,我用你的代码测下来是正常的,没有重现。

另外,你说的是哪个例子看不出区别?

anderscui avatar Apr 13 '18 07:04 anderscui

更新: 找到bug所在了!原来是custom dict的路径写错了,jieba没有找到这个文件,按理说应该报错的,但没有报错,导致我一直没发现是路径的问题。现在segmenter.LoadUserDict功能正常了。

原帖: .NET4.5, 和你出现了相同的问题,segmenter.LoadUserDict没有报错,但是也没有起作用(segmenter.Cut和posSeg.Cut均无效)。但使用segmenter.AddWord添加的自定义词典就能起作用。你们解决了吗?

23df avatar Apr 18 '18 08:04 23df

//添加自定义词语
segmenter.LoadUserDict("shu_biao_tong_industry.txt"); 

请问一下,.NET 控制台的情况下 采用相对路径时,是这样设置自定义字典路径的吗?我这样设置了之后还是不能分词,另,这个文件是放在Resources文件夹下的! 我测试了传入全路径的情况依然没有效果!

ArmyMedalMei avatar Jul 05 '18 15:07 ArmyMedalMei

我测试的是CutForSearch才有效,Cut无效

rootlee88 avatar Mar 10 '20 04:03 rootlee88