Aus Linux-Magazin 10/2015

Web-basierte Generatoren für reguläre Ausdrücke

© Natalia Sinelnik, 123RF

Reguläre Ausdrücke verlangen von ihrem Verfasser etwas Übung und sollten nicht ohne Tests vom Band gehen. Mit den Tests beginnt jedoch erst die eigentliche Arbeit und die nützlichen Helfer entpuppen sich zunächst als Zeitfresser. Die Bitparade stellt sechs Onlinetools vor, die beim Regex-Bau assistieren.

Javascript kann es, Perl kann es schon lange und Ruby kann es erst recht. Jede Skriptsprache, aber auch Hochsprachen wie Java und C# unterstützen reguläre Ausdrücke. Inzwischen finden sich diese flexiblen Werkzeuge überall dort, wo Entwickler den Umgang mit Zeichenketten unter Unschärfen automatisieren, etwa in der Suchen-und-Ersetzen-Funktion von Texteditoren und in den Scripting-Umgebungen der Betriebssysteme.

Die liebevolle Bezeichnung Regex beschönigt die wenig intuitive Bezeichnung “reguläre Ausdrücke” aus der theoretischen Informatik, die auf die Formelsprache für Zeichenmengen verweist. Die Bitparade entwirft ein Beispiel für einen regulären Ausdruck und testet diesen mit sechs Werkzeugen, die sich als Online-Regex-Helfer anpreisen.

Das im Artikel gewählte Beispiel veranschaulicht zugleich die Logik dieser Mengenlehre und ihre Tücken. Es sucht nach einer klassischen IPv4-Adresse, die gemäß RFC 1166 aus vier durch Punkte getrennten Dezimalzahlen besteht, die 8-Bit-Werte zwischen 0 und 255 repräsentieren.

Test, Test

Listing 1 enthält einen Textblock mit IPv4-Adressen. Einige davon sind Teil einer Textzeile, andere stehen allein und wieder andere enthalten in unmittelbarer Nähe ähnliche Zeichen wie solche, die in gültigen IPv4-Adressen vorkommen. Weitere erscheinen zwar der Form nach korrekt, es handelt sich aber nicht um gültige IPv4-Adressen. Die Werte der Dezimalzahlen überschreiten 255 und liegen damit außerhalb eines gültigen 8-Bit-Wertes.

Listing 1

ip-test.txt

01 Das ist eine IP Adresse: 127.0.0.1
02 192.168.1.1 ist auch eine.
03 192.168.1.255
04 255.255.255.255
05 0.0.0.0
06 30.168.1.255.1 ist keine.
07 127.1 ist auch keine.
08 192.168.1.256
09 -1.2.3.4 hat ein Minus-Zeichen vorangestellt
10 3...3 ist keine gültige Adresse.
11 300.168.110.4 ist auch keine gültige IPv4-Adresse

Verfeinerung

Will ein Entwickler diesen Textblock mit »egrep« [1] nach gültigen IPv4-Adressen durchsuchen, würde er wohl zunächst den regulären Ausdruck

egrep '\b([0-9]{1,3}\.){3}[0-9]{1,3}\b'  ip-test.txt

verwenden. Der sucht nach einem Wortanfang, dann nach drei Blöcken, die aus einer bis drei Ziffern mit anschließendem Punkt bestehen, dann nach einem weiteren Ziffernblock, aber ohne Punkt, und schließlich nach dem Wortende.

Abbildung 1 zeigt das Ergebnis der Suche. Der erste Aufruf listet nur die Zeilen auf, welche die mit dem Regex beschriebene Adresse enthalten. Ein zweiter enthält zusätzlich die »egrep« -Option »-v« und invertiert die Suche. Er zeigt, welche Zeilen keine übereinstimmenden Zeichenketten enthalten. Das ist ein wichtiger Schritt beim Entwickeln regulärer Ausdrücke. Mit ihm findet ein Entwickler heraus, welche eigentlich gesuchten Zeichenketten der Ausdruck womöglich ungewollt ignoriert. Der dritte Aufruf behebt schließlich die Art von Fehlern, die den Regex-Entwickler am längsten beschäftigt. Er definiert, wie eine Wortgrenze explizit aussieht.

Abbildung 1: Egrep sucht in der Textdatei aus <link href="#article_l1" class="listing" srcset=

Listing 1 nach einer IPv4-Adresse.” width=”300″ height=”195″ /> Abbildung 1: Egrep sucht in der Textdatei aus Listing 1 nach einer IPv4-Adresse.

Augenscheinlich passt der reguläre Ausdruck in Bezug auf die Wortgrenzen. Die gesuchte Zeichenkette soll mit einer Wortgrenze beginnen oder aufhören. Doch die Fundstellen in den Zeilen 6 und 9 machen deutlich, dass Wortgrenzen mitunter uneinheitlich sind. Abhängig vom Dialekt gehört zu einer Wortgrenze jedes Zeichen, das nicht zur Zeichenmenge »0-9, a-z, A-Z, _« passt. Also ist der Fund zwar korrekt, aber dennoch unerwünscht.

Will der Entwickler nicht, dass die Zeichenkette direkt an eine andere Zeichenkette ohne definiertes Trennzeichen anschließt, verwendet er daher den dritten Ausdruck in Abbildung 1. Mit ihm akzeptiert der reguläre Ausdruck als Wortgrenze einen Zeilenanfang, ein Leerzeichen oder ein Zeilenende.

Richtig adressieren

Doch noch immer steht im Ergebnis ein Eintrag zu viel, denn »300.168.110.4« ist keine gültige IPv4-Adresse. Das mag egal sein, wenn eine Software, etwa ein Netzwerkprotokoll, ohnehin nur gültige IPv4-Adressen verarbeitet. Will der Entwickler aber IP-Adressen validieren, muss er präziser vorgehen. Listing 2 zeigt den Regex für eine korrekt aufgebaute und gültige IP-Adresse für »egrep« .

Listing 2

Regex für eine gültige IPv4-Adresse

01 (^|\s)((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(\s|$)

Ein weites Feld

Wie das Beispiel zeigt, ist der Teufel ein Eichhörnchen. Reguläre Ausdrücke sind ein weites Feld, beinahe jede Anwendung nutzt zudem einen eigenen Dialekt. So unterstützt »egrep« in verschiedenen Linux-Distributionen unterschiedliche Metazeichen. Jene für Wortgrenzen, also »\<« und »\>« , sind Beispiele für eine abweichende Implementierung. Meist hängt diese Abweichung mit der verwendeten Bibliothek zusammen.

Andersherum unterstützen unterschiedliche Programme mitunter den gleichen Dialekt. Orientierung bieten etwa der Posix-Standard ([2], [3]) oder die Perl Compatible Regular Expressions (PCRE, [4]), die neben Perl auch PHP verwendet. Ansonsten zieht der Programmierer die Dokumentation des Programms oder die Sprachreferenz zu Rate. Für Javascript bietet sich [5] an, Verweise auf weitere Anwendungen finden sich unter [6] und [7]. Wer tiefer in die Thematik einsteigen will, sollte das Werk von Jeffrey Friedl [8] studieren.

Wechselt der Entwickler ständig zwischen mehreren Anwendungen, muss er seine Muster jeweils von einer in die nächste übersetzen. Dabei übersieht er leicht entscheidende Fehler. Grafische Werkzeuge, die Fundstellen in den Testzeichenketten farblich hervorheben, helfen auch geübten Anwendern. Es gibt zahlreiche solche Tools, Blogs wie [9] stellen die beliebtesten vor.

Die sechs in der Bitparade präsentierten Regex-Tools laufen im Browser und sollen das vorgestellte Beispiel nachvollziehen. Sie unterstützen mehrheitlich die Regexp-Klasse von Javascript, drei von ihnen auch die von Python. Txt2re liefert gar Support für eine ganze Reihe von Sprachen.

Allerdings erwähnt keines der Tools, welche Implementierung von Javascript gerade aktiv ist oder welche Python-Version es unterstützt. Das erfährt der Nutzer erst durch Nachforschungen.

Regular Expressions 101

Die Browseranwendung Regular Expressions 101 [10] besticht durch ihr ansprechendes Design und die gute Hilfestellung beim Zusammenbau eines Ausdrucks. Allerdings bedient das Tool nur den englischen Sprachraum und es fehlt der Quellcode, Abbildung 2 zeigt es bei der Arbeit.

Abbildung 2: Regular Expressions 101 besticht mit ansprechendem Design.

Abbildung 2: Regular Expressions 101 besticht mit ansprechendem Design.

Der Testausdruck für eine IPv4-Adresse führte zum gewünschten Ergebnis. Bei der Auswahl des Dialekts (»Flavor« ) erwartet das Tool noch einen Schalter für die Art der Suche. Die Hilfe nennt die Optionen, das Linux-Magazin griff für den Textblock auf den Multiline-Modifier (»m« ) und die globale Suche (»g« ) zurück.

Das Tool zeigt die Fundstellen bei der Eingabe unmittelbar an, zugleich erklärt es den regulären Ausdruck auf der rechten Seite unter »Explanation« . Dazu zerlegt es ihn in seine Bestandteile und erläutert die möglichen Such- und Alternativpfade. Das hilft vor allem jenen Nutzern, die sich gerade in die Feinheiten regulärer Ausdrücke einarbeiten.

Die Informationen zu den Fundstellen (»Match Information« ) listen die einzelnen Teilelemente der Fundstellen auf. Zum Verständnis helfen zudem die Anmerkungen (»Notes« ) aus dem »Explanation« -Fenster. Die Fundstellen exportiert der Entwickler in verschiedene Formate (Json, CSV, Text), die umfangreiche Referenz leistet gerade Regex-Einsteigern gute Dienste.

Schaltet der Nutzer den Dialekt um, passt Regular Expressions 101 alle Ergebnisse unmittelbar an. So erkennt er sehr gut Unterschiede im Verhalten. Je nach gewählter Sprache stehen dem Werkzeug noch Helfer zur Seite. Für alle Sprachen bietet es zudem einen Codegenerator und Unittests an. Der Codegenerator erzeugt Vorlagen für Skripte, die der Programmierer in eigenen Programmcode einbindet. Mit den Unittests entwirft er eine Reihe von Tests für Zeichenketten.

Die Optionen für ein definiertes Testergebnis sind dabei sehr vielfältig. Der Tester kann eine Übereinstimmung mit dem ganzen regulären Ausdruck anpeilen oder nur eine Untergruppe auswählen. Dabei legt er auch fest, ob der Test mit einer bestimmten Zeichenkette oder Teilen davon übereinstimmen soll. Die erstellten Unittests startet er mit einem Klick auf das Dreieck über der Liste (Abbildung 3). Als Ergebnis zeigt die Software jeweils ein »pass« oder »fail« an.

Abbildung 3: Unittests ergänzen Regular Expressions 101 sinnvoll.

Abbildung 3: Unittests ergänzen Regular Expressions 101 sinnvoll.

Für PCRE und Python stehen zusätzlich die Tools »format regex« und »regex debugger« bereit. Das erste bringt den Ausdruck in Form. Das erfordert den »x« -Modifier, der das Tool eingefügte Leerzeichen und Zeilenumbrüche beim Ausführen des Regex ignorieren lässt. Sollen Leerzeichen Teil der Suche sein, muss der Programmierer den Regex anpassen.

Der »regex debugger« untersucht reguläre Ausdrücke zur Laufzeit. Er schlüsselt auf, wie vieler Schritte es bedarf, um die jeweilige Teilfundstelle zu berechnen. Einen ersten Hinweis gibt schon das Hauptfenster. Für den Dialekt PCRE erfordert die Suche im Testtext aus Listing 1 beispielsweise über 1000 Schritte. Den Großteil der Rechenschritte investiert das Tool, um mögliche Lösungen zu errechnen, die letztlich nicht zum Regex passen.

Die regulären Ausdrücke lassen sich anschließend noch speichern, wozu der kleine Helfer eine Kurz-URL generiert, oder einfach zur Bibliothek hinzufügen. Einen vorhandenen Ausdruck kann der Entwickler auch forken, ihn also zur eigenen Weiterentwicklung kopieren und nutzen. Die Bibliothek ist sehr umfangreich, verfügt über eine Suchfunktion und eine Art Gefällt-mir-Button. Die Liste sortiert der Programmierer wahlweise auch nach Popularität.

Regviz

Regviz [11] ist eine Browseranwendung für Javascript-Ausdrücke. Der Nutzer gibt einen regulären Ausdruck in ein Textfeld ein und wendet ihn auf einen Textblock an (Abbildung 4). Eine Legende auf der rechten Seite hilft ihm dabei. Auch ohne einen Klick auf »Apply« führt Regviz den Ausdruck ein wenig verzögert aus. Die Zahl der Fundstellen erscheint unmittelbar über dem Textblock. Teilgruppen der Fundstelle zeigt Regviz zwar an, verteilt die Anzeige jedoch eher willkürlich auf die verschiedenen Fundstellen.

Abbildung 4: Regviz ist eine Browseranwendung für Javascript-Ausdrücke.

Abbildung 4: Regviz ist eine Browseranwendung für Javascript-Ausdrücke.

Erst auf den zweiten Blick fällt das Symbol in der linken oberen Ecke auf. Dahinter verbirgt sich ein Menü, das Beispiele enthält und über das sich der Ausdruck auch speichern lässt. Dafür generiert Regviz entweder eine Kurz-URL oder bietet den Ausdruck zum Kopieren in der Zwischenablage an.

Das Tool erlaubt es zudem, einfache Unittests anzulegen, wenn der Nutzer im Textblock den gewünschten Text markiert und auf »add test« klickt. Die Bedienung gestaltete sich in der Praxis jedoch etwas kompliziert und führte in Tests zu diesem Artikel leider nicht zum gewünschten Erfolg. Die Beispiele enthalten zudem Tests, anhand derer ein Entwickler eine gegebene Funktion zwar nachvollziehen kann, eigene Tests erstellt Regviz jedoch nicht korrekt.

Debuggex Beta

Debuggex Beta [12] ist eine kommerzielle Browseranwendung, mit der User reguläre Ausdrücke für Javascript, PCRE und Python untersuchen. Sie richtet sich an Unternehmenskunden und stuft den Funktionsumfang je nach Preismodell ab. Nicht so ganz intuitiv gelingt der Einstieg über das mittlere Textfeld »my regular expression« . Dort gibt der Nutzer den Regex ein und testet ihn anhand eines Textes im Feld darunter. Auf den ersten Blick lässt sich nicht sofort erkennen, was zu tun ist. Die Eingaben für einen Testausdruck im Rahmen des Artikels zeigt Abbildung 5.

Abbildung 5: Debuggex Beta stellt Such- und Alternativpfade sehr übersichtlich dar.

Abbildung 5: Debuggex Beta stellt Such- und Alternativpfade sehr übersichtlich dar.

Gelungen ist, wie Debuggex Beta reguläre Ausdrücke visualisiert. Die Software stellt die einzelnen Such- und Alternativpfade sehr übersichtlich dar. Auf den ersten Blick sind die Teilgruppen zu erkennen. Eine einfache Hilfe bietet das mitgelieferte, wenn auch etwas versteckte Javascript-Cheatsheet.

Für professionelle Entwickler sind Unittests unverzichtbar. Zugang zu ihnen sowie zur Bibliothek erhalten nur registrierte Nutzer. Die erlaubte Anzahl an Tests, die ein Nutzer anlegen kann, hängt vom gewählten Preismodell ab. In der kostenlosen Variante darf er zwei Unittests pro Regex ablegen, wobei es sich jedoch nur um sehr einfache Unittests handelt. Eine eingegebene Zeichenkette stimmt entweder mit dem Regex überein oder sie tut es eben nicht.

Über die Menüleiste speichert der Nutzer seine selbst entworfenen Ausdrücke (»Save As« ). Diese erreicht er anschließend über eine eindeutige URL, über die er sie auch für andere freigibt (»Share« ). Ergänzend generiert er über das Menü auch Code-Auszüge für Javascript (»Code Snippet« ).

Regexr

Regexr [13] ist eine Browseranwendung für reguläre Ausdrücke unter Javascript. Das Tool konzentriert sich auf das Wesentliche und erlaubt die Eingabe eines regulären Ausdrucks, den es ohne Verzögerung auf einen Text anwendet. Die Fundstellen markiert es dabei nicht immer korrekt, wie Abbildung 6 deutlich macht, in der es fälschlich die halbe zweite Zeile hervorhebt. Die Anzahl der Fundstellen zeigt es hingegen korrekt an. Fährt der Nutzer mit der Maus über eine Fundstelle (Roll-over), erscheinen weitere Informationen zum Fund. Dazu gehören die übereinstimmende Zeichenkette und die Nummer der Teilgruppe.

Abbildung 6: Regexr hatte seine Schwierigkeiten mit dem Testausdruck.

Abbildung 6: Regexr hatte seine Schwierigkeiten mit dem Testausdruck.

Definierte Muster ersetzen auf Wunsch Fundstellen im Textblock. Dafür ist das Teilfenster »Substitution« gedacht. Im Eingabefeld darüber gibt der User die festgelegten Muster ein, die sich auf Fundstellen oder Teilgruppen beziehen. Letztere ersetzt das Tool auf diesem Weg automatisiert.

Die Ausdrücke und den Textblock speichert der Regexr-Anwender über »Save« als Beitrag für die Community oder in den Favoriten. Bevor er einen eigenen Beitrag für die Community beisteuert, riskiert er jedoch besser noch ein letzten Blick auf den Textblock. Da er ihn beim Speichern zugleich öffentlich macht, sollten sich keine sensiblen Daten mehr in dem Ausdruck oder dem Text befinden.

Regexr bietet für die Weitergabe (»share« ) eine URL an, die sich in der Zwischenablage ablegen lässt. Von Dauer bleibt der Ausdruck aber erst, wenn der Nutzer das Projekt speichert. Weitergeben kann der Ausdruckskünstler seine Werke schließlich mit den umschließenden Schrägstrichen und Modifiern, als bloßen regulären Ausdruck oder als Codeschnipsel in Javascript.

Regexr punktet vor allem mit seinen Community-Funktionen. Neben der Referenz, dem Cheatsheet und den Beispielen liefern andere Nutzer Ausdrücke für diverse Muster. Darunter unter anderem solche für IP-Adressen. Diese lassen sich bewerten und als Favoriten speichern. Ein Mausklick übernimmt sie in den Testbereich, wo der Nutzer sie modifiziert. Dadurch eignet sich Regexr als guter Einstieg in die Welt der regulären Ausdrücke. Auch für geübte Nutzer ist das Tool interessant, da es für den schnellen Zusammenbau und Test eine klare Oberfläche bietet und nicht mit Funktionen überladen ist.

Regulex

Regulex [14] visualisiert reguläre Ausdrücke in Javascript im Browser. Das Tool dient als übersichtliche und grafisch ansprechende Hilfe, um Regexe zu untersuchen. Der Nutzer schreibt den Term in das Eingabefeld. Das Programm bietet dabei keine weitere Hilfestellung an, es setzt das entsprechende Wissen beim User also voraus.

Nach einem Klick auf »Visualize« erstellt Regulex dann eine Grafik zum regulären Ausdruck. Als Bildüberschrift nutzt es den Ausdruck aus dem Eingabefeld, so geht dieser nach dem Klick auf »Export Image« nicht verloren.

Abbildung 7 zeigt das Tool nach der Eingabe eines Testausdrucks. Die generierte Grafik ist gelungen, sie visualisiert die Elemente des Regex sehr anschaulich. Den bearbeiteten Befehl speichert der Nutzer am besten selbst, andernfalls müsste er ihn von der Grafik abtippen. Alternativ gäbe es noch die Möglichkeit, den regulären Ausdruck als HTML-Code zu exportieren (»Embed On My Side« ). Will er ihn weiterverwenden, müsste er den Ausdruck aber erst wieder von einem Browser rendern lassen.

Abbildung 7: Auch Regulex generiert gelungene Grafiken, um Regexe abzubilden.

Abbildung 7: Auch Regulex generiert gelungene Grafiken, um Regexe abzubilden.

Txt2re

Txt2re [15] unterscheidet sich von den bisher vorstellten Tools, da es einen anderen Ansatz verfolgt. Es generiert nach einem Klick auf »Show Matches« alle möglichen Teilmuster für den zu suchenden Text. Ein Klick auf die Bezeichner fügt diese zu einem Regex hinzu. Der ist bereits in einer Codevorlage eingebettet, der Nutzer erweitert ihn Klick für Klick ohne Verzögerung. Die Abbildungen 8 und 9 zeigen das Ergebnis anhand einer IPv4-Adresse im Textfeld.

Abbildung 8: Txt2re unterscheidet sich ein wenig von den anderen Tools im Test.

Abbildung 8: Txt2re unterscheidet sich ein wenig von den anderen Tools im Test.

Abbildung 9: Die Software erkennt die Codevorlage problemlos.

Abbildung 9: Die Software erkennt die Codevorlage problemlos.

Sucht das Tool nach Bezeichnern, erkennt es auch Muster für den gesamten Ausdruck. Wie das Beispiel zeigt, hat es nicht nur die eingegebene IP-Adresse als solche identifiziert, sondern bietet zudem einen regulären Ausdruck für IPv4-Adressen an. Im Codefenster wählt der Entwickler neben Javascript viele andere Sprachen, darunter Perl, PHP, Python, Java, C, C++, Ruby oder C#.

Laut einem Urheberhinweis ist das Tool schon seit 2006 online, obgleich es niemand mehr aktiv weiterentwickelt. Sein unkonventioneller Ansatz dürfte es aber für einige Anwendungsfälle weiterhin interessant machen.

Mehr oder weniger

Grundsätzlich gehen bis auf Txt2re und Regulex alle hier vorgestellten Regex-Tools nach dem gleichen Muster vor: Der Nutzer gibt einen regulären Ausdruck in ein Textfeld ein und testet die Wirkung an einem Text in einer Textbox. Diese markiert die Fundstellen entsprechend. Debuggex und Regulex visualisieren den Regex und erleichtern damit die Lesbarkeit erheblich. Txt2re fällt etwas aus dem Rahmen, indem es zu einem Text verschiedene Beschreibungsmöglichkeiten zur Auswahl stellt. Bei entsprechender Auswahl entsteht ein Regex, der genau auf den Text passt.

Unterschiede finden sich vor allem in der Hilfestellung für Regex-Neulinge. Einige Tools bringen Regex-Community-Bibiliotheken mit, andere Referenzen zum Nachschlagen von Metazeichen. Einige Tools verzichten hingegen komplett darauf. Wer sie nutzt, sollte fundierte Regex-Kenntnisse mitbringen. Unterschiedlich ist auch der Umgang mit dem Quellcode: Nur Regulex [16] und Regexr [17] bieten ihren unter der MIT-Lizenz an.

Die hier vorgestellten Tools sind zudem nur eine kleine Auswahl aus einem riesigen Angebot. Es scheint viele Entwickler zu geben, die sich gern und intensiv mit regulären Ausdrücken beschäftigen, weitere Angebote liefert Tabelle 1.

Tabelle 1

Weitere Regex-Tools

Tool

Sprache

URL

Refiddle

Javascript, Ruby, Dotnet

http://refiddle.com

Rubular

Ruby

http://www.rubular.com

Regexe

Javascript

http://www.regexe.com

Regex Raptor

Bash

http://regexraptor.net

Fazit

Gerade für ungeübtere Regex-Enthusiasten entpuppt sich Regular Expressions 101 als klarer Sieger. Das Werkzeug arbeitet fließend, ist ansprechend aufgebaut und liefert zahlreiche Hilfestellungen für die Arbeit mit regulären Ausdrücken. Insbesondere die Erklärungen zum eingegebenen Ausdruck und die Unittests erweisen sich als sehr nützlich.

Regexr folgt dem Favoriten recht dicht auf den Fersen. Das Tool gibt zahlreiche Hilfestellungen, bringt nützliche Community-Funktionen mit und punktet im kooperativen Einsatz. Im Lehrbetrieb ließen sich über die gespeicherten URLs sogar Regex-Hausaufgaben einreichen.

Wer auf Funktionsumfang und Hilfestellung verzichten kann, erhält mit Regulex ein sehr gutes Tool zu Visualisierung von regulären Ausdrücken für Javascript. Als ebenso nützlich erweist sich Txt2re. Konzeptionell ein Außenseiter punktet es mit der Vielzahl unterstützter Dialekte und automatischer Mustererkennung.

Etwas abgeschlagen folgen Debuggex Beta und Regviz. Bei Debuggex Beta stellt sich die Frage nach dem Mehrwert gegenüber anderen Tools. Immerhin sind für den vollen Funktionsumfang laut Preisliste 15 US-Dollar pro Monat fällig, was für hauptberufliche Regex-Entwickler lohnenswert sein mag. Das Tool wirkt vom Design her aber etwas altbacken und erfordert eine Registrierung, um erweiterte Funktionen zu nutzen.

Regviz schließt die Reihe der Testkandidaten ab. Es wirkt nicht mehr zeitgemäß und patzte im Test auch in Sachen Bedienung. Die Beispielfunktion ließ sich mit eigenen Ausdrücken und Testtexten nicht nachvollziehen, auch die einfache Testfunktion ließ sich praktisch nicht benutzen.

Der Autor

Marcus Nasarek ist Linux seit Langem treu und schwer begeistert von Scripting, Ruby und Projekten mit dem Raspberry Pi.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 7 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
LINUX-MAGAZIN KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Readly Logo
E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben