Necesito encontrar, procesar y eliminar (uno por uno) cualquier subcadena que responden a un tiempo bastante largo de expresiones regulares:pitón y reemplazar
# p is a compiled regex
# s is a string
while 1:
m = p.match(s)
if m is None:
break
process(m.group(0)) #do something with the matched pattern
s = re.sub(m.group(0), '', s) #remove it from string s
El código anterior no es bueno por 2 razones:
no funciona si m.group (0) pasa a contener caracteres de expresiones regulares-especial (como *, +, etc.).
Parece que estoy duplicando el trabajo: primero busco el hilo para la expresión regular, y luego tengo que ir a buscarlo de nuevo para eliminarlo.
¿Qué es una buena forma de hacerlo?
Gracias, se olvidó de eso .. – max
Ah, y me di cuenta de qué hacer al respecto si yo quiero reemplazar una cadena que puede contener símbolos de expresiones regulares en ella .. re.escape (s) se encarga de eso. – max
lo siento pero lo que es p? – CodyBugstein