Regular Expressions: Syntax enträtselt

Zeichen-Erkennung

Die Crux bei der Verwendung Regular Expressions besteht in der genauen Beschreibung des gewünschten Suchergebnisses, also in der genauen Beschreibung dessen, was einen Treffer ausmacht. Ohne dieses Konzept wären Regular Expressions nutzlos. Jeder Ausdruck muss Angaben darüber enthalten, wonach gesucht werden soll (Tabelle A).

Operator Beschreibung Beispiel Ergebnis
. Passt auf jedes beliebige Zeichen grep .ord sample.txt Erkennt „ford“, „lord“, „2ord“ etc. in der Datei sample.txt.
[ ] Passt auf jedes beliebige Zeichen aus der Liste in den eckigen Klammern grep [cng]ord sample.txt Erkennt nur „cord“, „nord“ und „gord“
[^ ] Passt auf jedes beliebige Zeichen, das nicht in den eckigen Klammern aufgeführt ist grep [^cn]ord sample.txt Erkennt „lord“, „2ord“ etc., aber nicht „cord“ oder „nord“
    grep [a-zA-Z]ord sample.txt Erkennt „aord“, „bord“, „Aord“, „Bord“ etc.
    grep [^0-9]ord sample.txt Erkennt „Aord“, „aord“ etc., aber nicht „2ord“ etc.

Tabelle A: Regular Expressions zur Zeichen-Erkennung

Wiederholungs-Operatoren

Wiederholungs-Operatoren (Quantifier) beschreiben, wie oft eine bestimmte Zeichenfolge erkannt werden soll. Sie werden zusammen mit Zeichen-Erkennungsmustern eingesetzt, um nach mehreren Zeichen zu suchen (Tabelle B). An dieser Stelle unterscheidet sich schon die Unterstützung in den einzelnen Anwendungen, man sollte also einen Blick in die Dokumentation der jeweiligen Anwendungen werfen, falls ein Muster nicht wie erwartet funktioniert.

Operator Beschreibung Beispiel Ergebnis
? Passt auf ein beliebiges Zeichen einmal, sofern es vorhanden ist egrep „?erd“ sample.txt Erkennt „berd“, „herd“ etc. und „erd“
* Erkennt das vorstehende Element mehrfach, sofern es vorhanden ist egrep „n.*rd“ sample.txt Erkennt „nerd“, „nrd“, „neard“ etc.
+ Erkennt das vorstehende Element ein- oder mehrmals egrep „[n]+erd“ sample.txt Erkennt „nerd“, „nnerd“ etc., aber nicht „erd“
{n} Erkennt das vorstehende Element genau n-mal egrep „[a-z]{2}erd“ sample.txt Erkennt „cherd“, „blerd“ etc., aber nicht „nerd“, „erd“, „buzzerd“ etc.
{n,} Erkennt das vorstehende Element mindestens n-mal egrep „.{2,}erd“ sample.txt Erkennt „cherd“ und „buzzerd“, aber nicht „nerd“
{n, N} Erkennt das vorstehende Element mindestens n-mal, aber höchstens N-mal egrep „n[e]{1,2}rd“ sample.txt Erkennt „nerd“ und „neerd“

Tabelle B: Regular Expressions – Wiederholungs-Operatoren

Themenseiten: Anwendungsentwicklung, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu Regular Expressions: Syntax enträtselt

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *