我在这里使用代码将文本拆分为单个单词,它适用于我尝试过的所有语言,除了日语和中文。
有没有办法可以调整代码以正确标记日语和中文?文档说支持这些语言,但它似乎并没有在适当的地方破坏单词。例如,当它标记“新しい”时,它将它分成两个词“新し”和“い”,而应该是一个(我不会说日语,所以我不知道这是否真的正确,但是样本我说过这些都应该是一个词)。其他时候它会跳过单词。
我确实在使用 kCFStringTokenizerUnitWordBoundary 时尝试创建中文和日文语言环境。结果有所改善,但对于我正在做的事情仍然不够好(向词汇添加超链接)。
我知道其他一些可用的标记器,但如果我能坚持核心基础,我宁愿避免使用它们。
[更新]一段时间以来,我们最终使用 mecab 和特定的日语用户词典,现在已经转移到仅在服务器端完成所有这些工作。那里可能并不完美,但我们在所有平台上都有一致的结果。