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>
Código:
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...#(<(\w+) ?(?-s:.)*?>.*?(?!</\1>))#s
¿Alguna sugerencia?
Gracias por vuestro tiempo.