Claro que respondí.
Cita:
Iniciado por razpeitia Para tu siguiente ejemplo hace exactamente lo mismo pero sin el espacio.
Pero asumí que con el primer ejemplo bastaba. Básicamente hace lo mismo pero sin el espacio en blanco.
De todas formas aquí te lo explico.
Código:
#Paso 1
#Coincide \b por que es el inicio de la cadena y el primer caracter es un caracter de palabra
#"hace una humedad del 95 %"
#^ Aqui coincide \b
#Paso 2
#"hace una humedad del 95 %"
# ^Coincide \w* hasta aqui
#Paso 3
#"hace una humedad del 95 %"
# ^Coincide \b por que el anterior caracter es un caracter de palabra y el siguiente no
#Paso 4
#"hace" es un grupo
#Paso 5
#"hace una humedad del 95 %"
# ^Aqui coincide \b
#Paso 6
#"hace una humedad del 95 %"
# ^Coincide \w*
#Paso 7
#"hace una humedad del 95 %"
# ^Coincide \b por que el anterior caracter es un caracter de palabra y el sig no
#Paso 8
#"" se hace grupo
#....
#Paso N
#"hace una humedad del 95 %"
# ^Concide \b
#Paso N+1
#"hace una humedad del 95 %"
# ^Concide \w*
#Paso N+1
#"hace una humedad del 95 %"
# ^Concide \b el sig caracter es un espacio y el anterior es un caracter de palabra
#Paso N+2
#"95" se hace un grupo
#Paso N+3
#"hace una humedad del 95 %"
# ^Concide \b
#Paso N+4
#"hace una humedad del 95 %"
# ^Concide \w*
#Paso N+5
#"hace una humedad del 95 %"
# ^Concide \b
#Paso N+6
#"" se hace un grupo
Lo que tu quieres esto:
Código Python:
Ver original#coding: utf-8
import re
er = re.compile(r"""
#Para explicar grupo
\b #límite de palabra
(\w+)
\b #limite de palabra
""", re.VERBOSE|re.U|re.I)
textoU = u"""hace una humedad del 95 %"""
print "elm_finditer:"
resultado=re.finditer(er,textoU)
for i in resultado:
print repr(i.group())
print "---"