一般而言,它采用 Unicode 文本并尝试将其他书写系统中文本所表达的发音音译为罗马字母,从而将其表示为 US-ASCII 字符(普遍可显示的无重音字符)。
前任,
"一二三".ooxx => "e-er-san"
在完成http://rubygems.org/search?utf8=%E2%9C%93&query=pinyin之后,我得到了一些 rubygems,但它们都不能很好地解决这个问题。
一般而言,它采用 Unicode 文本并尝试将其他书写系统中文本所表达的发音音译为罗马字母,从而将其表示为 US-ASCII 字符(普遍可显示的无重音字符)。
前任,
"一二三".ooxx => "e-er-san"
在完成http://rubygems.org/search?utf8=%E2%9C%93&query=pinyin之后,我得到了一些 rubygems,但它们都不能很好地解决这个问题。
完美地做到这一点几乎是不可能的,因为有些汉字有两个或多个发音,例如银行 = yin hang, 不能 = bu xing(最后一个字符相同,d hang 在一个上下文中,而 xing 在另一个上下文中)... 其他除此之外,您可能还可以使用 unicode 数据库自行开发,我认为该数据库也有发音信息。如果你想更花哨,我想有一些开源输入法有映射,它们也会有它们的单词,这样如果你一起找到银行,它就会知道第二个字符是挂起的,不兴。OpenVanilla可能有您可以使用的数据库 (OSS)。