Python RegEx grupos múltiples


Answers

A veces, es más fácil sin expresiones regulares.

>>> s = '''Lun: 0 1 2 3 295 296 297 298'''
>>> if "Lun: " in s:
...     items = s.replace("Lun: ","").split()
...     for n in items:
...        if n.isdigit():
...           print n
...
0
1
2
3
295
296
297
298
Question

Me confundo devolver varios grupos en Python. Mi RegEx es este:

lun_q = 'Lun:\s*(\d+\s?)*'

Y mi cadena es

s = '''Lun:                     0 1 2 3 295 296 297 298'''`

Devuelvo un objeto coincidente y luego quiero ver los grupos, pero todo muestra el último número (258):

r.groups()  
(u'298',)

¿Por qué no devuelve grupos de 0,1,2,3,4 etc.?




Si está buscando una salida como 0,1,2,3,4, etc. La respuesta simple es la siguiente.

imprimir re.findall ('\ d', s)




Links



Tags

python python   regex