Reguläre Ausdrücke
Reguläre Ausdrücke (RegExp) sind Freund oder Feind eines Entwicklers. Ich bin ihnen eher zugeneigt, gerate aber auch oft genug an meine Grenzen der mentalen Verflechtung, wenn es darum geht einen Fehler in der Anweisung zu finden. Hier kommen dann zwei äußerst nützliche Helferlein zum Einsatz: regular expressions 101 oder RegExr.
Ein Regulärer Ausdruck ist eine Anweisung einer Beschreibungssprache, die für die Mustererkennung verwendet wird. Hiermit lassen sich mächtige Such- und Ersetzungslösungen implementieren, die auf Anweisungen wie
“Suche alle Vorkommen von einzelnen Vokalen, die nicht am Anfang oder Ende eines Wortes stehen und ersetze diese durch ein ‘X’.”
realisieren.
Normale Suchen würden nach A, E, I, O und U suchen, dann aber auch AU, EI, EU und Co. finden. Von der zunehmenden Komplexität durch die Bedingung, dass der Vokal nicht am Anfang oder Ende eines Wortes stehen darf, ganz zu schweigen.
Der folgende Reguläre Ausdruck löst das Problem der oben formulierten Suchaufgabe recht “charmant”:
/(?<![aeiou\s])[aeiou](?![aeiou\s])/i
Im Wust von geklammerten Sonderzeichen und maskierten Buchstaben – dieser beispielhafte Ausdruck ist noch vergleichsweise einfach – kann man schnell die Orientierung verlieren. Die beiden vorgestellten Webseiten RegEx101 und RegExr nehmen den Ausdruck auseinander und erklären ihn, bzw. lassen ein dynamisches Testen zu, ohne dass man als Programmierer große Debugging Routinen entwickeln muss.
Für meine Programmierprojekte, insbesondere das online Würfeltool @RollButler, handelt sich hierbei wohl um das meistgenutzte online Tool.
.htaccess Tester
Bei der .htaccess Datei handelt es sich um eine Konfigurationsdatei für Webserver zu deren Kernkomponente auch oft die Auswertung und Umleitung von Aufrufen durch Webbrowser gehört. Kaum eine moderne Anwendung kommt ohne diese Datei aus, wenn mit sprechenden URL gearbeitet werden soll. Auch hier basiert die Konfiguration auf Regulären Ausdrücken in einer abgespeckten Fassung.
Wer nun einmal versucht hat, eine .htaccess Datei zu pflegen, wird sicherlich ebenfalls schon sein blaues Wunder und zahlreiche 500er Internal Server Error Fehlermeldungen zu Gesicht bekommen haben. Ich persönlich will nicht wissen, wie oft ich durch das Auskommentieren von Zeilen und Blöcken versucht habe, der Ursache einer nicht funktionierenden Anweisung auf den Grund zu gehen.
So habe ich einen Freudensprung gemacht, als ich das Tool htaccess tester gefunden habe, bei dem die Rewrite Regeln getestet werden können, ohne dass ein Editieren der Datei auf dem Server notwendig ist. Zwar unterstützt dieses Tool noch nicht alle Parameter, aber für den absoluten Großteil der Anweisungen ist es eine gewaltige Hilfe.
Auch hier steht eine eigene API zur Verfügung für Entwickler, die das Tool automatisiert – z. B. in ihrer Entwicklungsumgebung – mit einbeziehen wollen.
Fazit
Es sind zahlreiche kostenfreie online Tools zu finden, die einem Programmierer das Leben erleichtern können. Die wertvollsten für mich habe ich hier einmal aufgezeigt. Das Feld ist damit allerdings noch längst nicht abgegrast und so entdeckt man für seinen Bedarf immer wieder neue Werkzeuge.
Bei einigen dieser Lösungen wünschte ich mir eine feste Integration in meiner Entwicklungsumgebung, was durch die angebotenen APIs durchaus machbar wäre (und vielleicht eine Aufgabe für ein paar Stunden Langeweile darstellt). Doch in den meisten Fällen benötige ich diese Werkzeuge nur gelegentlich, dann jedoch sind sie von unschätzbarem Wert.