技术解析

如何区分中文和日文
0
2021-06-07 07:41:54
idczone

因为要把文本翻译成英文, 而使用的 sdk 需要指定源文字的语言类型。但 [BL-bm 长岛抗投诉服务器雄一] 这类的文字如何把它和中文区分开?

感谢。


使用的 SDK ? 你用这个文本的场合机翻都能对付了还管什么人名

单个或者少数几个字符怎么判断语言? ABC 三个字母算什么语言?英语?法语?德语?说中文也可以,因为使用拉丁字母的汉语拼音应该也算是中文吧

拿 char code 去 utf8 的表里查

补充一下信息吧。google 的 cloud translation api 要花钱, 于是找到一个免费的替代的包`googletrans`. 但是不指定 源语言 自动翻译的不准确 [`BL-bm 长岛雄一 => BL-BM Long Island`] , 如果指定 源语言是日文 则 得到 [BL-BM Otani Seibe]

感谢回复, 之前都是直接填写 google 翻译后的结果, 现在想做成自动的, 所以想找个好用翻译的工具

名字你管它做球,其它大部分可以判断有没有假名在里面

有语种识别的,找找 API 吧

判断假名就行,字符数不够就无法判断。

Otani Seibe 也不是长岛雄一啊,Otani 是大谷(Ootani 简写)
日语汉字多是繁体或异体,简体汉字以“日语”翻译也会出错的
你这个实际上已经是语义理解了,需要 AI 级别判断,单纯字符很难做到
不过有些取巧方法可以试试

CJK code point 是有重合的

能做出来这个功能单独就可以卖钱了。。。

长岛雄一 就这四个字,读作 Changdao Xiongyi 的时候是中文,读作 Nakashima Yuuichi 的时候是日文,如果你只是要区分是日本人姓名还是中国人姓名的话,那倒还好说。找个两国百家姓做个词典?

其实两国百家姓也不能解决问题,例如 Hayashi 的林,Duanmu 的端木

碰到类似 秦基博 菅义伟 这样的名字,你怎么区分是中文还是日文……

这个课题很难。
简单点的就是火狐的那个检测库,但是处理不了你这种情况。
你这种 CJK 都有的汉字,要结合语义来处理,也就是要结合人工智能了。

统一感谢大家回复,还是花钱用 google 翻译服务了。 百度的翻译便宜 但是翻译过来,翻译不回去了 淦!!

日本人名字的发音非常搞,就算是日本人完全不能保证正确拼读更别说 AI 了,如果是重要场合的话必须人工校对。

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服