Moin,
Hallo!
Also ich würde an das Problem gar nicht so direkt herangehen.
Denn wenn du irgendwann tausende eigene Tags hast, würden dir auch tausende RegEx um die Ohren fliegen.
Du solltest am besten die HTML-Struktur analysieren (das natürlich mit RegEx) und die Baumstuktur in ein Array ablegen. Also immer mit Knoten-Id und Parent-Id. Dann kannst du zu den einzelnen Konten noch Dinge wie Tag-Name, Attribute und Inhalt definieren.
Anschließend muss man nur noch den Baum durchwandern und anhand der sauber hinterlegten Eigenschaften einen komplett neuen Baum generieren.
Genau so mache ich das doch... Den RegEx, den ich gepostet habe, trifft auf _alle_ Framework-Tags zu (Schließend, Öffnend, Selbstschließend), welcher Typ jetzt vorliegt, kann ich später mit einem ähnlichen RegEx herausfinden. So erzeuge ich die von dir angesprochene Baumstruktur. Mein Problem ist aber, dass ich in meinem Kopf grad keine Vorstellung habe, wie ich einen Tag umsetzen kann, der seinen Inhalt über etwas Bestimmtes (z.B. alle Seiten oder einfach nur die Zahlen 1-10) iterieren lässt.
Gruß,
Take