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)