文化独立IsVowel

时间:2014-08-08 11:15:24

标签: c# .net vb.net localization

我需要创建一个函数来告诉我角色是元音还是辅音,但我需要它是独立于文化的。换句话说,使用带有" aeiou"的字符串。因为某些语言使用其他元音,例如带有重音符号的元音,所以还不够好。我是否必须编译所有可能是元音的unicode字符的列表,或者是否有更简单的方法来执行此操作?

1 个答案:

答案 0 :(得分:2)

我不认为这是可能的。很少有语言可以在字符和声音之间进行一对一的匹配。以iota为例 - 有些人会将第一个i发音为元音,其他人将其作为辅音发音。

语音字母应该有助于此。例如,见:

http://en.wikipedia.org/wiki/International_Phonetic_Alphabet

您必须使用拼音字母作为中介,并从那里取元音。然而,然而,您仍然存在将单词翻译成该语音字母表的问题。一些在线词典可能能够帮助你,但即使这样,同一个词可能会出现多次有时会有不同的发音,我不知道是否有任何允许你通过网络服务挂钩或如果有是任何离线选项。

http://www.photransedit.com/online/text2phonetics.aspx(例如可怕的全屏广告)

这个问题与翻译软件的复杂性有关,你真的需要对上下文有所了解,以便了解你甚至需要查找哪个单词以及在哪个数据库中查找。

因此,根据您的要求,您可能希望尽可能简单地开始,但要考虑上述因素。为了让您的应用程序稍后获得精确度,您可以从创建返回IPA元音的函数开始,然后创建一个字母和字母组合的查找表来匹配它们。然后,您可以考虑获取或创建更好的数据。

您可以使用这些图表作为输入:

http://www.antimoon.com/how/pronunc-soundsipa.htm

许多语言培训书籍也有概述。我一直很喜欢“自学......”系列,因为他们总是对语言的声音有一个概述。