拉丁语到英语字母哈希

时间:2010-12-22 18:52:05

标签: python nlp

我必须将所有拉丁字符转换为相应的英文字母。我可以使用Python来做吗?或者是否有可用的映射?

Unicode值为非unicode字符

Ramírez Sánchez应转换为Ramirez Sanchez

1 个答案:

答案 0 :(得分:6)

看起来你想要的是重音删除。你可以这样做:

def strip_accents(text):
    return ''.join(char for char in
                   unicodedata.normalize('NFKD', text)
                   if unicodedata.category(char) != 'Mn')

>>> strip_accents('áéíñóúü')
'aeinouu'
>>> strip_accents('Ramírez Sánchez')
'Ramirez Sanchez'

这适用于西班牙语,但请注意,它并不总是适用于其他语言。

>>> strip_accents('ø')
'ø'