RegEx zum Filtern von leeren Tags
Im Zusammenhang mit dynamischen Templates bin ich auf folgendes Problem gestossen: Im Template befindet sich ein ul-Tag, darin wiederum steht ein Platzhalter, der durch eine Liste ersetzt wird in der Ausgabe.
Nun, semantisch funktioniert das, so lange wir auch eine Liste mit li-Tags erstellen. Sprich so lange, wie wir auch Inhalt produzieren. Im Beispiel sieht das so aus:
2<ul>
3<li>Gemeindeammann</li>
4<li>Schulpräsident</li>
5</ul>
6
7schlecht:
8<ul></ul>
So, jetzt sieht man das Problem: ein leerer ul-Tag. Klar, den könnte man nun mit einer Regular Expression filtern, wie sie bereits in einem früheren Eintrag beschrieben worden ist. Das Problem ist nur, dass der Bereich zwischen dem Start- und Endtag nicht zwingend leer ist, also Leerzeichen enthalten kann. Und so muss man sich einer weiteren Ersetzung behelfen:
Mit dieser RegEx werden alle ul-Tags gefiltert, die keine li-Tags enthalten.