使用Microsoft Translator api转换人员名称不进行翻译

时间:2013-02-28 15:44:42

标签: c# translate microsoft-translator

我正在致电微软翻译,将阿拉伯语名称转换为英语 但它翻译名称,我只想转换名称

例如: أحمدماهر

需要 艾哈迈德马赫

该服务正在运行,但它转换了名称的含义而不仅仅是名称

3 个答案:

答案 0 :(得分:1)

我不了解其他语言,但以您为例 أحمدماهر= Ahmed Maher 我所知道的是罗马化无法使用

为什么?因为曲折和字母“动作”使一个字母不止一种发音。例如

مَح = Mah مُح = Muh

字母相同,但发音不同。

我提出的解决方案是转换名称的规则 您可以找到代码和我编写的npm package。 如果您有任何疑问,问题,或者您想了解阿拉伯语的规则,我将很乐意为您提供帮助。

请检查以下内容,以了解更多有关转换阿拉伯名称的规则:

首字母规则 我正在检查该字母是否是第一个字母,因为如果“و”是第一个字母,人们倾向于将其写为“ W”,但是如果它在单词中,则将其写为“ O”。

内部字母规则 我的意思是所有不是第一个也不是最后一个字母的字母,它将根据字母进行更改,例如第一个图像“م”等于“ H”

下一封信规则 在这条规则中,我检查了这封信和下一封信。喜欢 如果字母是“م”,下一个字母是“ع”,则应写成“ Mua” 如果字母是“م”,下一个字母是“ي”,则应写成“ May”  特殊字母规则 看起来像是下一个字母规则,但它将包含另一个操作,例如“切片” 例如:在“首字母规则”中,我说过单词中的“و”将转换为“ O” 。“ا”我将需要删除“ O”,并在“ا”前加上“ w”然后是“ A”。但是如果下一个字母是并且我相信可以提高此规则,但是拥有它很重要。 >

最后一个字母规则 如果没有此规则,“萨拉”的名称将从阿拉伯语转换为“萨拉” 该规则检查最后一个字母是否为“ه”,是否会加上“ H”以完成名称。

答案 1 :(得分:0)

听起来你想要一个字符替换,而不是真正的翻译。您可以使用String.Replace构建自己的音译器。

有人问了一个关于将西里尔语音译为拉丁语的类似问题: How to transliterate Cyrillic to Latin text

答案 2 :(得分:0)

如果它位于网站上,您可以在窗口小部件中启用协作翻译框架功能,并使用该功能将翻译“覆盖”为名称。

如果您正在构建应用程序,API也支持此功能。

Widget文档在这里:http://blogs.msdn.com/b/translation/p/ctf1.aspx 在这里:http://blogs.msdn.com/b/translation/p/ctf2.aspx