拉丁字母到英语字母哈希
我需要把所有的拉丁字母转换成对应的英文字母。我可以用Python来做到这一点吗?或者有没有现成的映射表?
把Unicode值转换成非Unicode字符
Ramírez Sánchez
应该转换成Ramirez Sanchez
。
1 个回答
13
看起来你想要的是去掉重音符号。你可以用下面的代码来实现:
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('ø')
'ø'