|    
			
				22/04/2011, 14:08
			
			
			  | 
  |   |  |  |  Fecha de Ingreso: enero-2011 
						Mensajes: 23
					 Antigüedad: 14 años, 9 meses Puntos: 0 |  | 
  |  Duda python Expresiones Regulares  
  Hola a todos!. Tengo algunas dudas con las expresiones regulares de pyhton, lenguaje con el cual estoy empezando.
 No entiendo el resultado que devuelven estos dos ejemplos ni su motivo. A ver si podeis ayudarme.
 
 Por ejemplo, si yo defino la siguiente expresion regular:
 
 er = re.compile(r"""
 #Para explicar grupo
 \b #límite de palabra
 (\w* \s)
 \b #limite de palabra
 """, re.VERBOSE|re.U|re.I)
 
 Y la siguiente frase unicode:
 
 textoU = u"""hace una humedad del 95 %"""
 
 
 y muestro de la siguiente manera las coincidencias:
 
 
 print "elm_finditer:"
 resultado=re.finditer(er,textoU)
 for i in resultado:
 print i.group()
 print "---"
 
 Me muestra por pantalla:
 
 elm_finditer:
 hace
 una
 humedad
 del
 
 Si de la expresión regular elimino el \s dejando solo \w*:
 
 er = re.compile(r"""
 #Para explicar grupo
 \b #límite de palabra
 (\w*)
 \b #limite de palabra
 """, re.VERBOSE|re.U|re.I)
 
 
 Obtengo:
 
 elm_finditer:
 hace
 
 una
 
 humedad
 
 del
 
 95
 
 
 Mis dudas son:
 
 1- Si para el primer caso estoy diciendo que me muestre todas las palabras que van seguidas de espacio porque no muestra 95?.
 
 2. Si el el segundo caso estoy diciendo que muestre todas las palabras, y las muestra, porque me crea espacios en la lista que devuelve, es decir porque no devuelve todas las palabras seguidas?.
 
 3. Podrias explicarme exactamente para que se usa y el uso correcto de \b ?, porque me da que aunque lo use no lo debo tener muy claro...
 
 Gracias a todos.
     |