[Python-es] Comparación de cadenas no sensible a acentos
Pepe Aracil
pepe en diselpro.com
Mie Dic 29 12:50:24 CET 2010
Hola.
Para asciificar (menudo palabro) textos yo suelo utilizar esta función:
from unicodedata import lookup, name
def normalize(s, encoding = "UTF-8"):
if not isinstance(s,unicode):
s = s.decode(encoding)
ret = u""
for c in s:
n = name(c)
pos = n.find("WITH")
if pos >= 0:
n = n[:pos]
n = lookup(n.strip())
ret += n
return ret
normalize(u"una cigüeña hábil") == u"una ciguena habil"
Saludos.
El 11 de diciembre de 2010 08:39, Chema Cortes <py en ch3m4.org> escribió:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> El 10/12/10 07:26, Luis Miguel Morillas escribió:
>
> >> Gracias, la verdad es que me sonaba esto del normalize pero estaba
> bloqueado :-P
>
> Siempre tienes los archivos de la lista para estos casos:
>
> http://mail.python.org/pipermail/python-es/2007-March/016737.html
>
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.10 (GNU/Linux)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
>
> iQEcBAEBAgAGBQJNAyqoAAoJEFdWyBWwhL4FzaAH/2035m42DWocMoPkOdbdZ9Gt
> vlf/VYYU5lu6b2TGuU9VDvrLOFXx6CJZowfwKDctcTqGNKgAi0qkeUKrPfnJC8SZ
> X+OmFO1WvYg3BHSXxPGg31bzYG331LNAx8paE33RZeTS2mHXZiR5auapzalnK2Ha
> e3D/IEDaGaO0UyAkDv5ak3IA7/OnFDvgi6coFBCXnCpourRhVomIYzTPil1yw1gS
> JrUwO1PMSfyGrHHq+r4bATPOuNGbT5d8pH0eSTyVx2hIuwfdvtEzDZD2/Szl6/1t
> 97jQEVlAD8MPnfGUZg1SiL5H7Iy1s1Nv1epY9Bec2vowHUGQ8o/1OAISvlTHpBg=
> =ADAY
> -----END PGP SIGNATURE-----
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20101229/738a001f/attachment.html>
Más información sobre la lista de distribución Python-es