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
Neueste Kommentare
Noch keine Kommentare zu Regular Expressions: Syntax enträtselt
Kommentar hinzufügenVielen Dank für Ihren Kommentar.
Ihr Kommentar wurde gespeichert und wartet auf Moderation.