1

我打电话给微软翻译把阿拉伯名字转换成英文但它翻译名字,我只想转换名字

例如:أحمد ماهر

需要成为艾哈迈德·马赫

该服务正在运行,但它翻译名称的含义而不仅仅是名称

4

3 回答 3

1

我不了解其他语言,但对于您的示例 أحمد ماهر = Ahmed Maher 我所知道的是罗马化不适用于它

为什么?因为变形和字母“运动”使一个字母多于一种发音。例如

مَح = Mah مُح = Muh

相同的字母,但发音不同。

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

请查看以下内容以了解有关转换阿拉伯名称所需规则的更多信息:

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

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

下一封信规则 在这条规则中,我检查了这封信和即将到来的一封。比如如果字母是“م”而下一个字母是“ع”则应该写成“Mua” 如果字母是“م”而下一个字母是“ي”则应该写成“May”  特殊字母规则 它看起来像下一个字母规则,但它将包含另一个动作,例如“切片”例如:在“首字母规则”中,我说单词中的“و”将转换为“O”。我需要删除“O”并为“ا”添加一个“w”然后是“A”但是如果下一个字母是并且我相信这个规则可以得到加强,但它很重要。

最后一个字母规则 如果没有此规则,名称“Sarah”将从阿拉伯语转换为“Sara” 此规则检查最后一个字母是否为“ه”“ة”,如果是,则添加“H”来完成名称。

于 2020-06-24T05:03:40.320 回答
0

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

如果您正在构建应用程序,API 也支持这一点。

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

于 2013-04-18T03:53:44.217 回答
0

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

有人问了类似的关于将西里尔文音译为拉丁文的问题: 如何将西里尔文音译为拉丁文文本

于 2013-02-28T15:52:49.923 回答