问题背景:
在项目中使用paoding分词器时,发现分词时该分词器会自动将中文数字-一二三四五六七八九十 这样的中文数字转换为 123456789,但是在本需求中要避免自动转换的情况发生。接手这个需求后,发现国内网上不翻墙关于paoding分词器相关的内容非常少,甚至下载分词器都要变相付费,如果需要该分词器源码可以联系我😱
问题定位:
分析源码可以得出结论,在CJKKnife中处理中文时,会判断文字是否时单个或连续的中文数字,如果是则会将其转换为对应的阿拉伯数字进行分词。
解决方案:
分析上述逻辑,可以得出如果在判断时将需要不转换的中文数字判断为非数字即可避免自动转换发生,同时不影响其他的自动转换逻辑。
那么比较合适的方法就是修改ChartSet的toNumber方法,将中文数字判断为<0
修改结果可以实现如下效果: