/ / Regexp para cortar <a> con QRegExp en Qt - regex, qt

Regexp para cortar <a> con QRegExp en Qt - regex, qt

Tengo una cadena:

Qstring text = "<a href="/GPWIS2/pl/emitents/news/4FUNMEDIA,PL4FNMD00013,1,current,1,1;jsessionid=vD8S3MVOLWcx-Cg2ecHBojDy.undefined">4Fun Media SA</a>"

Me gustaría cortar la etiqueta <a...> pero no funciona. Estoy tratando de hacer algo como esto:

text.remove("<a.*>"); No sé por qué no funciona.

Respuestas

1 para la respuesta № 1

No funciona porque .* es codicioso e intentará tomar todos los personajes que pueda en el partido. En este caso, "todo coincidirá hasta el último ... </un>. y luego coincide con el último >

Prueba esto: <a.*?>

.*? es la versión perezosa de .* que solo coincidirá con el número mínimo de caracteres necesarios para que la coincidencia sea exitosa. En este caso, la primera > Se encuentra, justo antes de los contenidos de la a etiqueta.

Además, si desea también eliminar el </a> entonces deberías probar esto en su lugar: </?a.*?>

/ coincidirá con < / a> y el ? significa que es opcional tenerlo por lo que aún coincidirá con el primero <a> etiqueta. .*? ganó "t afectará el segundo partido ya que .*? puede coincidir con 0 caracteres (es perezoso después de todo!)

Regex101