[pyar] Matcheando regexes unicode

Fabian Ezequiel Gallina galli.87 en gmail.com
Mie Mayo 4 16:34:18 ART 2011


El día 4 de mayo de 2011 16:23, Daniel Moisset
<dmoisset en machinalis.com> escribió:
> Hola,
>
> si hago
>
> re.match("n", "mono") obtengo un matrch que es la "n", como espero
>
> Pero si hago
>
> re.match("ñ", "moño"), obtengo None
>
> "zonzo, estas usando python 2.x y cadenas de bytes" diran. pero
>
> re.match(u"ñ", u"moño", re.UNICODE), también da None
>
> Y si me paso a Python 3,
>
> re.match("ñ", "moño", re.unicode), sigue dando None
>
> ideas de como puedo matchear regexes con texto unicode en texto
> unicode? y/o de que estoy haciendo mal?
>

Estas haciendo mal el match:

re.match("a", "sa")
=> None

re.match("\w+a", "sa").group(0)
=> 'sa'

re.match("\w+ñ", "moño").group(0)
=> 'mo\xc3\xb1'

re.match(u"\w+ñ", u"moño", re.UNICODE).group(0)
=> 'mo\xc3\xb1'

El pattern "ñ" no matchea "moño" ni "ñoño", sólo matchea "ñ" :)

PD: re.match("n", "mono") a mi no me matchea nada.


Saludos,
-- 
Fabián E. Gallina
http://www.anue.biz



More information about the pyar mailing list