Also die Kommentare sollten keine Probleme darstellen.
$Region/$EndRegion sind die einzigen schlüsselwört die du brauchst oder nicht?(natürlich checken obs in {} ist).
Jedesmal wenn du $Region findest geht ein referenzzähler rauf, bei $EndRegion runter. Soweist du ob und in welcher ebene du dich befindest. Leider muss man dafür recht pingelig per Pos/PosEx durchgehen. Also immer nach { suchen, von dort } suchen und dazwischen gucken ob die benötigten schlüsselwörter vorhanden sind.
Das mit dem referenzzähler hab ich mal benutzt als ich nen einfachen Codeanalysator gebastelt hab, der die Codestructur in eine interne Struktur beim textschreiben packte.(war für ne eigene
IDE und sone art CodeInsight/Intellisense oder wie man es nennen möchte). Bei prozeduren/funktionen mussten nunmal auch verschachtelungen berücksichtigt werden, damit ich die start und endzeile rausbekam und so den programmcode virtuel in blöcke aufteilen konnte.
MFG
Memnarch