Reguläre Ausdrücke Schnellreferenz

Reguläre Ausdrücke Schnellreferenz 00 Featured Image

Wenn Sie mit Text arbeiten, werden Sie zu schätzen wissen, wie nützlich reguläre Ausdrücke sind. Dies sind kleine Zeichenfolgen, mit denen Sie ausgeklügelte Regeln dafür erstellen können, wie ein Wort aussieht. Diese Regeln können so einfach sein wie das Finden eines einzelnen Buchstabens in einem Dokument oder so komplex wie das Suchen aller Wörter, die mit „a“ und „c“ beginnen, aber mit „ism“ enden.

Laden Sie dieses Handbuch herunter

Geben Sie Ihre E-Mail-Adresse unten ein, um dieses PDF-Handbuch in Ihrem Posteingang zu erhalten.

Wesentliche reguläre Ausdrücke

Reguläre Ausdrücke (oder regex kurz) sind überall in Linux-Umgebungen verbreitet, um durch Text bis hin zu den Zeichen zu suchen. Diese Schnellreferenz für reguläre Ausdrücke wird für Menschen nützlich sein, die einfach ab und zu eine kleine Auffrischung benötigen.

Eine wichtige Anmerkung ist jedoch, dass die Menge der verwendbaren regulären Ausdrücke weitgehend von dem Standard abhängt, den eine Software verwendet. Zum Beispiel nutzen häufige Linux-Terminals oft den POSIX-Standard, während Vim und Perl nicht standardisierte Definitionen verwenden.

MetazeichenBeschreibungBeispiel
Zeichenübereinstimmung
ASuchen Sie nach jeder Instanz des Buchstabens „a“ in einem Dokument und stimmen Sie damit überein.a stimmt mit „Ameise“, „Katze“ und „Anna“ überein.
.Passt zu jedem einzelnen Zeichen, außer Steuerzeichen.c.t passt zu „Katze“, „Schnitt“ oder „Cot“.
*Wiederholen Sie den vorherigen Ausdruck 0 oder mehrmals (gieriger Modus).12*3 passt zu „13“, „123“, „1223“, „12223“. Es kann zusammen mit „.“ verwendet werden, wie m.*easier, das „maketecheasier“ passt. Die Verwendung von .* allein ist bedeutungslos, da es alles übereinstimmt und das gesamte Ergebnis zurückgibt.
+Wiederholen Sie den vorherigen Ausdruck 1 oder mehrmals.12+3 stimmt mit „123“, „1223“ und „12223“ überein.
?Macht das vorherige Element optional.ma?ke stimmt mit „make“, „mke“ überein.
^Übereinstimmung vom Anfang der Zeichenfolge.^he passt zu „hallo“, „hell“, „hilfe“, „er ist ein Junge“.
$Übereinstimmung vom Ende der Zeichenfolge.ed$ passt zu „handelt“, „Bett“, „Gier“.
Bereichsübereinstimmung
( … )Gruppierung von Zeichen oder Ausdrücken.(ak) passt zu „machen“, „nehmen“.
{ n }Passen Sie das vorherige Element genau n-mal an.12{3}5 passt zu „12225“.
[ … ]Übereinstimmung eines einzelnen Zeichens in den Klammern.[abc] passt zu „a“, „b“ oder „c“ im String „abc“.
[^ … ]Übereinstimmung mit jedem Zeichen außer den in der Klammer definierten.a[^b]c passt zu „aec“, „acc“, „adc“, jedoch nicht zu „abc“.
Klassenübereinstimmung (POSIX)
[:alpha:]Suchen Sie nach jedem Zeichen im englischen Alphabet und stimmen Sie damit überein.[[:alpha:]]ut stimmt mit den Wörtern „aber“, „Schnitt“ und „Bahn“ überein.
[:alnum:]Suchen Sie nach jedem Zeichen und jeder Zahl und stimmen Sie damit überein.[[:alnum]]tack stimmt mit „Stack“ und „5tack“ überein.
[:blank:]Suchen Sie nach einer Instanz von entweder einem Tabulator oder einem Leerzeichen und stimmen Sie damit überein.[[:blank:]]Hallo passt zu „ Hallo“.
[:space:]Suchen Sie nach jedem Leerzeichen und stimmen Sie damit überein.[[:space:]]Welt passt zu „ Welt“.
[:upper:]Suchen Sie nach jedem Großbuchstaben und stimmen Sie damit überein.[[:upper:]]+ stimmt mit den Wörtern „HALLO“, „FAntastisch“ und „wORld“ überein.
[:lower:]Suchen Sie nach jedem Kleinbuchstaben und stimmen Sie damit überein.[[:lower:]]+ stimmt mit den Wörtern „heLLO“, „FAntastisch“ und „welt“ überein.
[:punct:]Suchen Sie nach jedem Interpunktionszeichen und stimmen Sie damit überein.\w+[[:punct:]] wird mit den Wörtern „Hey!“, „Hi.“ und „Du?“.
[:cntrl:]Suchen Sie nach jedem Steuerzeichen und stimmen Sie damit überein.\w+[[:cntrl:]]$ stimmt mit den folgenden Wörtern überein: „end^M“, „word^M“ und „dies^M“.
[.ng.]Suchen Sie nach jedem Digraph „ng“ und stimmen Sie damit überein.bad[.zh.] passt zum Wort „Abzeichen“.
[=n=]Finden und passen Sie alle diakritischen Buchstaben von „n“ an.[=a=]\w+ wird mit den Wörtern „ànna“, „ápple“ und „âble“ übereinstimmen.
Klassenübereinstimmung (Perl/Vim)
\BSuchen Sie nach jedem Zeichen, das keine Wortgrenze ist, und stimmen Sie damit überein.\B+\b wird „o “ in „hallo “ sowie „ h“ in „ hi“ übereinstimmen.
\wSuchen Sie nach jedem Buchstaben und jeder Zahl und stimmen Sie damit überein.\w{5} wird mit den folgenden Kombinationen von Buchstaben und Zahlen übereinstimmen: „Welt“, „12345“ und „w0r1d“.
\WSuchen Sie nach allen Symbolen und stimmen Sie damit überein.\w{2}\W\b wird mit den folgenden Wörtern übereinstimmen: „so.“, „ha!“ und „ich?“.
\dSuchen Sie nach jeder Zahl und stimmen Sie damit überein.\d{3} wird mit den folgenden Zahlen übereinstimmen: „111“, „777“ und „888“.
\DSuchen Sie nach jedem Zeichen, das keine Zahl ist, und stimmen Sie damit überein.\D{3} wird mit den folgenden Buchstaben und Symbolen übereinstimmen: „Ameise“, „ba!“ und „!#*“.

| \s | Suchen Sie nach allen Leerzeichen und stimmen Sie damit überein. | a\w+(i|y)sm\s wird mit den folgenden Wörtern übereinstimmen: „Altruismus“, „Albinismus“ und „Aneurysma“. | | \S | Suchen Sie nach allen Nicht-Leerzeichen und stimmen Sie damit überein. | \S{5} wird mit den folgenden übereinstimmen: „123hi“, „hi!^&“ und „ | | \A | Finden Sie den Anfang eines Wortes, unabhängig davon, ob es sich nicht am Anfang einer Zeile befindet. | \A{2} wird „He“ und „wo“ in „Hallo Welt“ übereinstimmen. | | \Z | Finden Sie das Ende eines Wortes, unabhängig davon, ob es sich nicht am Ende einer Zeile befindet. | \z{2} wird „lo“ und „ld“ in „Hallo Welt“ übereinstimmen. | | Steuerzeichen | | | | | | Entweder den Ausdruck links oder rechts von der Pipe übereinstimmen. | col(o|ou)r passt zu „color“, „colour“. | | – | Geben Sie einen Bereich von zuzuordnenden Zeichen an. Wird hauptsächlich in [a-z], [A-Z],[1-9],[a-zA-Z1-9] verwendet. | a[a-z]c passt zu „abc“, „acc“, „adc“. | | \ | Escape ein Sonderzeichen und machen Sie es zu einem gewöhnlichen Zeichen. | a\*c passt zu „ac“. | | \n, \r, \t | Stimmt jeweils mit einem Zeilenumbruch, einer Rückkehr und einem Tabulatorzeichen überein. | \w{5}\t\w{5}(\n|\r) passt zu „Hallo Welt“. | | \b…\b | Übereinstimmung eines Wortes innerhalb der Grenzen. | \bTech\b stimmt mit dem Wort „Tech“ in „Mach Tech einfacher“ überein. | | *Komplexe Ausdrücke | | | | [0-9]{3}-[0-9]{4} | Suchen Sie nach einer Sequenz aus drei und vierstelligen Zahlen und stimmen Sie damit überein. | Dieser Ausdruck wird mit den folgenden Zahlenkombinationen übereinstimmen: „123-1234“, „111-1111“ und „777-1234“. | | ([0-9]{3}-)?[0-9]{3}-[0-9]{4} | Stimmen Sie mit zwei dreistelligen Zahlen und einer einzelnen vierstelligen Zahl überein. | Dieser Ausdruck wird mit den folgenden Kombinationen übereinstimmen: „123-123-1234“, „000-111-0001“ und „777-5678“. | | .{1,3} | Suchen Sie nach jedem Wort, das zwischen einem und drei Zeichen lang ist. | Dieser Ausdruck wird mit den folgenden Wörtern übereinstimmen: „bei“, „es“ und „kann“. | | ([A-Z])\w+ | Stimmen Sie mit jedem Wort überein, das mit einem Großbuchstaben beginnt. | Dieser Ausdruck wird mit den folgenden Wörtern übereinstimmen: „Hallo“, „Welt“ und „Hey“. | | e[([:digit:]|[:alnum:])]c | Stimmen Sie mit jedem alphanumerischen Zeichen zwischen „e“ und „c“ überein. | Dieser Ausdruck wird mit den folgenden Kombinationen übereinstimmen: „e1c“, „e5c“ und „e7c“. | | [^0-9[:upper:]]+ | Suchen Sie nach jedem vollständig großgeschriebenen Wort, das nicht mit einer Zahl beginnt. | Dieser Ausdruck wird mit den folgenden Wörtern übereinstimmen: „HALLO“, „WELT“ und „HEY“. | | “.+” | Finden Sie ein zitiertes Wort und stimmen Sie damit überein. | Dieser Ausdruck wird mit dem folgenden Zitat übereinstimmen: „Hallo, Welt!“. |

Bildnachweis: Unsplash