俄语、英语、芬兰语和爱沙尼亚语的语音算法(soundex和变音)
fonetika的Python项目详细描述
福奈蒂卡
基于soundex/metaphone的俄语、英语、爱沙尼亚语和芬兰语语音算法。
软件包实现了音素转换为字母数字序列和距离引擎,用于比较语音序列(基于levenstein和hamming距离)。
快速启动
- 通过
pip
安装此软件包
pipinstallfonetika
- 导入Soundex算法。
包支持很多机会,可以剪切结果序列(如原始soundex版本)或编码元音。
fromfonetika.soundeximportRussianSoundexsoundex=RussianSoundex(delete_first_letter=True)soundex.transform('ёлочка')...J070530soundex=Soundex(delete_first_letter=True,code_vowels=True)soundex.transform('ёлочка')...JA7A53A
A structure of the library is scalable,
RussianSoundex
class inherits basic classSoundex
(original for English language). In order to extend our algorithm, you need just inherit own class fromSoundex
and override methods.
- 导入soundex距离以使用字符串比较
fromfonetika.distanceimportPhoneticsInnerLanguageDistancesoundex=RussianSoundex(delete_first_letter=True)phon_distance=PhoneticsInnerLanguageDistance(soundex)phon_distance.distance('ёлочка','йолочка')...0
- 你也可以计算两种语言的单词之间的距离。这将有助于与一个语言家庭小组合作。
fromfonetika.distanceimportPhoneticsBetweenLanguagesDistancem1=FinnishMetaphone(reduce_word=False)m2=EstonianMetaphone(reduce_word=False)phon_distance=PhoneticsBetweenLanguagesDistance(m1,m2)phon_distance.distance('yö','öö')...1