Regex y grouping

Ferran Fontcuberta ferran en fompi.net
Mar Jul 28 17:40:35 CEST 2009


Buenas tardes;

Me gustaría poder utilizar algo tal que así:

def func(p):
	print p
	return p

re.sub('test(\d)', func(r'\1'), 'test0')

Pero veo que no es posible; la conversión de \1 a aquello a que hace
match parece ser que sólo funciona dentro de la expresión regular.

¿Alguna idea de cómo hacerlo?

Por si a alguien le interesa, es una paja mental, lo que quiero hacer
es:

def parseImg(img):
	imgs.append(img)
	return 'cid:'+img

print re.sub(
	'(<img[^(?:src)]* src=")([^"]*)"',
	r'\1'+parseImg(r'\2')+'"',
	i.text
	)

Y sí, se que debería hacerlo con un parser html al estilo BeatifulSoup,
teóricamente; pero solo son dos imagenes; no creo que merezca la pena
cargar BS para ello.

Gracias! :)


------------ próxima parte ------------
_______________________________________________
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