Was ist Regex?

Artikel

Regex (kurz für regulärer Ausdruck) ist eine Zeichenfolge, die ein Suchmuster definiert. Regex wird verwendet, um Zeichenketten zu finden, abzugleichen, zu ersetzen oder zu validieren — von einfachen Wortsuchen bis zu komplexen Textverarbeitungsaufgaben. Alle großen Programmiersprachen enthalten eine eingebaute Regex-Engine, was ihn zu einem der universell einsetzbaren Werkzeuge in der Entwicklung macht.

Reguläre Ausdrücke interaktiv testen?

Regex Tester öffnen →

Geschichte

Reguläre Ausdrücke entstammen der formalen Sprachtheorie. Mathematiker Stephen Cole Kleene führte sie in den 1950er Jahren als Notation zur Beschreibung regulärer Sprachen ein. Ken Thompson implementierte Regex im UNIX-Texteditor ed und später in grep (1973). Perl (1987) erweiterte die Syntax erheblich und machte den PCRE-Dialekt (Perl-Compatible Regular Expressions) populär, dem die meisten modernen Sprachen folgen.

Grundlegende Syntax

Ein regulärer Ausdruck ist ein Muster, das zwischen Trennzeichen geschrieben wird (in JavaScript: /muster/flags). Das Muster kann Literalzeichen, spezielle Metazeichen und Quantoren enthalten.

/* E-Mail-Validierungs-Regex */
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$

/* Passt: benutzer@beispiel.de */
/* Passt nicht: kein-email */

Kernkonzepte

Häufige Muster

Flags

Anwendungsfälle

Wichtige Regeln

Häufig gestellte Fragen

Was ist Regex?

Regex (kurz für regulärer Ausdruck) ist eine Zeichenfolge, die ein Suchmuster definiert. Es wird verwendet, um Zeichenketten zu finden, abzugleichen, zu ersetzen oder zu validieren. Alle großen Programmiersprachen unterstützen reguläre Ausdrücke.

Wofür steht Regex?

Regex steht für regulärer Ausdruck (englisch: regular expression). Der Begriff stammt aus der formalen Sprachtheorie, die Mathematiker Stephen Cole Kleene in den 1950er Jahren entwickelte.

Wofür wird Regex verwendet?

Regex wird für Eingabevalidierung (E-Mail, Telefon, Passwort), Suchen und Ersetzen in Texteditoren, Log-Datei-Parsing, URL-Routing und Datenextraktion aus unstrukturiertem Text verwendet.

Ist Regex in allen Programmiersprachen gleich?

Die meisten Sprachen unterstützen eine gemeinsame PCRE-basierte Syntax. JavaScript, Python, Java und PHP verwenden alle PCRE-kompatible Engines, aber Flags und einige erweiterte Features können sich unterscheiden.

Was ist der Unterschied zwischen * und + in Regex?

Der *-Quantor passt null oder mehr Vorkommen. Der +-Quantor passt ein oder mehr Vorkommen. a* passt also auch einen leeren String, während a+ mindestens ein "a" erfordert.

Was bedeutet ^ in Regex?

^ hat zwei Bedeutungen. Am Anfang eines Musters ist es ein Anker, der den Anfang der Zeichenkette passt. Innerhalb einer Zeichenklasse [^abc] bedeutet es Negation — passt jedes Zeichen außer den aufgeführten.

Verwandte Artikel

Quellen