Re: [Python-es] Pregunta de extracción con string

Chema Cortes pych3m4 en gmail.com
Lun Jun 15 12:43:56 CEST 2009


El 13 de junio de 2009 23:24, lasizoillo<lasizoillo en gmail.com> escribió:

>> Los bucles no siempre son solución.
>>
>> string="A1B1C1D1A2B2C3G56H1H2"
>>
>> import re
>> a=re.compile("[A-Z]").findall(string)
>> a.sort(reverse=True)
>> print "Letra %s" % a[0]
>
> No hace falta almacenar y ordenar los datos. Se puede usar la función max:
>
> print "Letra %s" % max(re.compile("[A-Z]").findall(string))

No vale la pena compilar la expresión regular si no la vas a usar más
veces. Para "encadenar" funciones mejor así:

print "Letra %s" % max(re.findall("[A-Z]",string))


Las expresiones regulares son muy potentes, pero este problema tiene
una solución más trivial:

print "Letra %s" % max(c for c in cadena if 'A'<=c<='Z')
print "Número %s" % max(c for c in cadena if '0'<=c<='9')
_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes





Más información sobre la lista de distribución Python-es