im Grunde kannst du nur ein Array anlegen
- jedesmal, wenn ein Open-Tag ( <tag ...> ) gefunden wird, dann wird dessen Anfang an das Array angehängt
- und sobald ein ClosedTag ( </tag> ) entdekt wird, dann wird der letze Eintrag aus dem Array entfernt
Wenn du jetzt noch je Array-Ebene/Verzeigungstiefe/Level die Aufrufe mitzählst, dann kannst du so auch erkennen, in welcher Tabelle du gerade bist.
leider ist
HTML eine "kranke" Sprache, in welcher die komischten Dinge grad noch so erlaubt/gedultet werden, weshalb es da garnicht so einfach ist, soeine Datei zu parsen.