Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/12/2008, 07:18
Sanva
 
Fecha de Ingreso: diciembre-2005
Ubicación: Redondela (Galicia)
Mensajes: 368
Antigüedad: 18 años, 4 meses
Puntos: 1
Encontrar etiquetas XHTML que no estén correctamente cerradas

Hola a todos.

Necesito una expresión regular (o algoritmo) que me permita encontrar etiquetas (X)HTML que no estén bien cerradas (o abiertas) en un texto dado.

Por ejemplo, en este texto la expresión debería coincidir con el <strong>:

Código HTML:
<p>Esto es un <strong>error</p> 
Pensaba que sería fácil, simplemente utilizando aserciones, y creé este patrón:

Código:
#(<(\w+) ?(?-s:.)*?>.*?(?!</\1>))#s
Pero no funciona... Encuentra tanto el p como el strong. Estuve buscando información y ejemplos sobre expresiones regulares en PHP y Perl pero no encuentro nada relacionado con lo que yo pretendo conseguir...

¿Alguna sugerencia?

Gracias por vuestro tiempo.