Reguläre Ausdrücke
Reguläre Ausdrücke werden zum Suchen nach Textteilen verwendet. Mit regulären Ausdrücken kann man z. B. alle Stellen in einem Text finden, wo drei gleiche Zeichen hintereinander stehen.
Im Prinzip sind reguläre Ausdrücke eine Erweiterung der von DOS bekannten Jokerzeichen *
und ?
zum Suchen von Dateien.
Nachteile
Mit regulären Ausdrücken kann man so viel machen, dass manche Leute glauben, man kann damit alles machen. Aber das stimmt nicht, das ist ein Hype.
Z. B. schwärmen viele für reguläre Ausdrücke zur Logfile-
In der Praxis bin ich außerdem auf folgende Probleme gestoßen:
- Wenn ein komplizierter regulärer Ausdruck nicht das Gewünschte findet, ist die Fehlersuche oft schwierig. Besser ist daher, mehrere einfachere reguläre Ausdrücke hintereinander anzuwenden. Das ist aber oft umständlicher zu programmieren.
- Schwierig sind auch kontextabhängige Ersetzungen, z. B. alle Zeilenumbrüche durch
<br>
ersetzen, außer zwischen<script>
und</script>
. - Wie die regulären Ausdrücke im Detail interpretiert und abgearbeitet werden, ist für mich nicht völlig durchschaubar. Ich muss manchmal einen regulären Ausdruck mehrmals hintereinander anwenden, damit alle Ersetzungen durchgeführt werden.
Mein Fazit
Wenn einem eine Datenbank zur Verfügung steht, fallen viele populäre Anwendungen von regulären Ausdrücken weg. Textdateien und reguläre Ausdrücke sind eindeutig leistungsschwächer als eine Datenbank. Wenn man "für den Anfang" mit ihnen arbeitet, wird man irgendwann später, wenn die Anforderungen so nicht mehr bewältigbar sind, alles nochmals neu mit einer Datenbank machen müssen.
Nur zum Durchsuchen von unstrukturiertem Text sind reguläre Ausdrücke konkurrenzlos.
Weiter
Siehe auch
- DOS – Mit
findstr
kann man Textdateien mit regulären Ausdrücken durchsuchen.