Te puedes guardar las falacias ad hominem para otro momento, esto no es filosofía, html no es un lenguaje regular, usar expresiones regulares para parsear html es una elección desastrosa, principalmente porque es imposible, no se puede parsear html con expresiones regulares porque no es un lenguaje regular. Eventualmente pueden servir para hacer una chapuza, pero hasta ahí.
http://stackoverflow.com/questions/1569917/how-do-i-parse-html-using-regular-expressions-in-chttp://kore-nordmann.de/blog/do_NOT_parse_using_regexp.htmlhttp://stackoverflow.com/questions/590747/using-regular-expressions-to-parse-html-why-nothttp://news.ycombinator.com/item?id=2742054Sé usar expresiones regulares, mis compañeros de trabajo me preguntan cuando tienen que escribir una expresión regular, y para parsear html es mejor DOM.
Sé que esto no es stackoverflow y que no se puede votar negativo de forma tan fácil, pero ¿no van a hacer nada los moderadores ante una persona que falta al respeto de forma reiterada para defender lo indefendible?, ¿alguien que está dando malas respuestas e intentando pasarlas por buenas a través del insulto y la falacia?
En cuanto a que DOM sólo ayudará a parsear html, en realidad es xml, pero si quieres parsear otros lenguajes no regulares que no sean xml entonces tendrás que construir un parser, no usar expresiones regulares. Una opción muy buena es antlr, que está disponible para varios lenguajes, para php en concreto no estoy segura de qué será lo mejor.