Tu trouveras très difficilement une regexp qui n'oublie aucun cas...Je te conseille de parser ton HTML en utilisant la bibliothèque DOM plutôt :
http://php.net/manual/fr/book.dom.php