Regex Tester

ENTWICKLER-TOOL

Regex Tester

Lerne reguläre Ausdrücke zu verstehen und zu testen. Gib ein Muster ein, sieh sofort alle Treffer und erfahre, was dein Regex macht.

Anfänger-freundlich Live-Test Erklärungen Cheat-Sheet 100% lokal

Was ist ein regulärer Ausdruck (Regex)?

Stell dir vor, du hast einen langen Text und möchtest alle Telefonnummern darin finden. Mit der normalen Suche (Strg+F) müsstest du jede Nummer einzeln eintippen. Mit Regex sagst du dem Computer stattdessen: „Finde mir alle Muster, die wie eine Telefonnummer aussehen“ – und er liefert dir sofort jeden Treffer.

🔍 Analogie: Ein Regex ist wie eine Schablone oder ein Suchmuster. So wie eine Schablone beim Malen vorgibt, welche Form entsteht, gibt ein Regex vor, welche Textstücke gefunden werden sollen.

Ein Regex beschreibt also ein Muster, das auf Text angewendet wird. Man kann damit suchen, prüfen, extrahieren und ersetzen.

💡 Beispiel: Der Regex \d{3}-\d{4} bedeutet: „Finde 3 Ziffern, dann einen Bindestrich, dann 4 Ziffern.“
→ Findet 123-4567, 555-0199, 987-6543 usw.

Wofür wird Regex verwendet?

Regex begegnet dir überall in der IT. Hier sind die häufigsten Anwendungsfälle – klicke auf eine Karte, um sie direkt im Tester auszuprobieren:

E-Mail-Adressen prüfen

Beim Anmeldeformular prüfen, ob die E-Mail gültig aussieht.

user@example.com

Telefonnummern finden

Aus Log-Dateien oder Texten alle Rufnummern extrahieren.

+49 30 12345678

URLs extrahieren

Alle Links aus einer Webseite oder Text-Datei herausfiltern.

https://example.com

Datum validieren

Prüfen, ob ein Datum im ISO-Format (YYYY-MM-DD) vorliegt.

2024-01-15

IPv4-Adressen finden

In Netzwerk-Logs alle gültigen IP-Adressen erkennen.

192.168.1.1

Hex-Farben finden

Alle Farbcodes wie #3498db aus CSS-Dateien extrahieren.

#3498db

Passwort-Regeln prüfen

Beim Registrieren prüfen, ob das Passwort sicher genug ist.

P@ssw0rd!

HTML-Tags finden

Aus HTML-Code alle Tags wie <div> oder <p> extrahieren.

<div>...</div>
Wo begegnet dir Regex im Alltag?
  • Suchfelder: In Editoren wie VS Code mit „Regex-Modus“ (Strg+F → .*-Symbol)
  • Programmierung: Um Text zu validieren, zu extrahieren oder zu ersetzen
  • Kommandozeile: Werkzeuge wie grep, sed, awk
  • Web-Formulare: Validierung von E-Mail, Telefon, PLZ, IBAN
  • Log-Analyse: Fehlerzeilen filtern, IPs extrahieren
  • Datenverarbeitung: CSV/JSON-Felder säubern und umformen

So benutzt du den Tester

1

Muster eingeben

Trage deinen regulären Ausdruck zwischen die Schrägstriche /.../ ein. Zum Beispiel \d+ für „eine oder mehr Ziffern“.

2

Test-Text einfügen

Schreibe oder füge einen Beispiel-Text ein, in dem gesucht werden soll. Alternativ: Klicke auf einen Anwendungsfall oder ein Beispiel, um sofort zu starten.

3

Treffer ansehen

Alle Treffer werden im Text farblich hervorgehoben und in der Liste darunter mit Position und Gruppen angezeigt.

4

Muster verstehen

Über dem Test-Text siehst du eine Erklärung deines Musters in Klartext. So lernst du Schritt für Schritt, was jeder Teil bedeutet.

Regex Live-Tester

Probiere es direkt aus – Ergebnisse aktualisieren sich automatisch beim Tippen.

Schnell-Beispiele laden
1. Dein regulärer Ausdruck
/ /
Was macht dein Muster?
Gib ein Muster ein, um eine Erklärung zu sehen.
Optionen (Flags)
2. Dein Test-Text
3. Ergebnis
Treffer-Details
0 Treffer

Regex Cheat-Sheet

Die wichtigsten Bausteine – klicke auf ein Muster, um es in den Tester einzufügen.

Zeichen & Zeichenklassen
\d Eine Ziffer (0-9)
\w Buchstabe, Ziffer oder _
\s Leerzeichen oder Zeilenumbruch
. Ein beliebiges Zeichen
[aeiou] Eines der Zeichen a, e, i, o, u
[^0-9] Alles außer Ziffern
Anker & Grenzen
^ Anfang der Zeile
$ Ende der Zeile
\b Wortgrenze
Wiederholungen (Quantoren)
* 0 oder mehr Mal
+ 1 oder mehr Mal
? 0 oder 1 Mal
{3} Genau 3 Mal
{2,5} Zwischen 2 und 5 Mal
{3,} Mindestens 3 Mal
Gruppen & Alternativen
(...) Gruppe (wird erfasst)
(?:...) Gruppe ohne erfassen
| Oder (a oder b)
(?<name>...) Benannte Gruppe

Wie funktioniert Regex?

Regex in drei Sätzen
  • Ein Regex ist ein Text-Muster, das Zeichen für Zeichen beschreibt, wonach gesucht wird.
  • Zeichen wie \d, \w sind Bausteine für Kategorien (Ziffern, Buchstaben).
  • Quantoren wie *, +, {3} geben an, wie oft etwas vorkommen muss.
Schritt-für-Schritt: Muster aufbauen

Angenommen, du möchtest Telefonnummern im Format 123-4567 finden. So baust du den Regex auf:

1

3 Ziffern am Anfang

Du brauchst genau 3 Ziffern. Also: \d{3}

→ \d = eine Ziffer, {3} = genau 3 Mal

2

Ein Bindestrich

Der Bindestrich ist ein ganz normales Zeichen: -

→ Bisher: \d{3}-

3

4 Ziffern am Ende

Zum Schluss noch einmal 4 Ziffern: \d{4}

→ Komplettes Muster: \d{3}-\d{4}

4

Testen!

Das Muster \d{3}-\d{4} findet jetzt alle Stücke wie 123-4567 in deinem Text.

→ Probiere es oben im Tester aus!

Häufige Anfängerfehler
  • Punkt ist nicht Punkt: . in Regex bedeutet „beliebiges Zeichen“ – für einen echten Punkt brauchst du \.
  • Backslash im String: In JavaScript-Strings muss \d als "\\d" geschrieben werden.
  • Kein Anker: Ohne ^ und $ wird auch ein Teil des Textes akzeptiert.
  • Greedy vs. Lazy: .* frisst zu viel Text – .*? stoppt früher.
  • Groß/Klein: Regex unterscheidet standardmäßig – mit i-Flag ignorieren.

Geschichte der regulären Ausdrücke

Von der formalen Sprachtheorie zur praktischen Textverarbeitung.

1951

Kleene'sche Hülle

Stephen Kleene beschreibt reguläre Sprachen mit den Operationen Verkettung, Vereinigung und der Kleene'schen Hülle (*). Der Begriff "regulärer Ausdruck" entsteht.

1968

Thompson's Regex

Ken Thompson (Unix-Erfinder) implementiert reguläre Ausdrücke in ed und später grep. Die Thompson-Konstruktion wird zur Grundlage moderner Regex-Engines.

1973

grep und egrep

grep (Global Regular Expression Print) wird zum Standardwerkzeug in Unix. egrep führt erweiterte Syntax ein (+, ?, |, ()). Regex wird aus der Kommandozeile nicht mehr wegzudenken.

1986

Perl und PCRE

Larry Wall veröffentlicht Perl 1.0 mit stark erweiterten Regex-Features. Die PCRE wird zum De-facto-Standard und beeinflusst PHP, Python, Ruby und viele mehr.

1999

JavaScript RegExp

ECMAScript 3 standardisiert RegExp in JavaScript. Die g, i, m Flags werden Standard. Später folgen u (2015), y (2015), s (2018).

Heute

Überall präsent

Regex ist in jeder Programmiersprache verfügbar. Es gibt spezialisierte Engines wie RE2 (Google), Hyperscan (Intel) und Oniguruma (Ruby). Moderne Regex-Engines bieten Lookbehind, Named Groups und Unicode-Eigenschaften.

FAQ – Häufige Fragen

Fragen von Anfängern

Was ist Regex überhaupt und wofür brauche ich das?

Regex (regulärer Ausdruck) ist ein Suchmuster für Text. Statt nach einem konkreten Wort zu suchen, beschreibst du ein Muster – zum Beispiel „3 Ziffern, Bindestrich, 4 Ziffern“.

Du brauchst Regex, wenn du:

  • Suchen willst, ohne den exakten Text zu kennen (z.B. alle Telefonnummern in einem Text)
  • Eingaben validieren musst (E-Mail, PLZ, IBAN beim Anmeldeformular)
  • Text umformen willst (aus Max Mustermann mach Mustermann, Max)
  • Logs analysieren willst (alle Fehlerzeilen mit IP-Adresse finden)

Kurz: Immer wenn du Text nicht 1:1 suchst, sondern nach einem Muster.

Was bedeuten die Schrägstriche /.../ und die Buchstaben dahinter?

Die Schreibweise /muster/flags kommt aus JavaScript und ist eine Kurzschreibweise:

  • Schrägstriche /: Umschließen das Muster (damit man Anfang und Ende sieht)
  • Buchstaben dahinter: Das sind die Flags (Optionen)

Beispiele:

  • /\d+/g — finde alle Zahlen
  • /hallo/i — finde "hallo", "Hallo", "HALLO"
  • /^start/m — Zeilen, die mit "start" anfangen

In Programmiersprachen schreibt man auch: new RegExp("\\d+", "g"). Der Effekt ist derselbe.

Was ist der Unterschied zwischen \d, \w und \s?

Das sind Kurzschreibweisen für häufige Zeichenklassen:

  • \d = digit (Ziffer): 0, 1, 2, ..., 9
  • \w = word (Wortzeichen): a-z, A-Z, 0-9 und Unterstrich _
  • \s = space (Leerraum): Leerzeichen, Tab, Zeilenumbruch

Mit Großbuchstaben wird die Bedeutung umgekehrt:

  • \D = alles außer Ziffern
  • \W = alles außer Wortzeichen
  • \S = alles außer Leerraum

Eselsbrücke: Kleinbuchstabe = „das Zeichen“, Großbuchstabe = „alles außer dem Zeichen“.

Was bedeutet das Sternchen * und das Plus +?

Diese Zeichen sind Quantoren – sie geben an, wie oft etwas vorkommen darf:

  • * = 0 bis unendlich Mal („darf auch fehlen“)
  • + = 1 bis unendlich Mal („muss mindestens einmal da sein“)
  • ? = 0 oder 1 Mal („optional“)

Beispiel mit ab*c:

  • findet ac (b fehlt, weil *)
  • findet abc (ein b)
  • findet abbbc (viele b)

Beispiel mit ab+c:

  • findet NICHT ac (mindestens ein b nötig)
  • findet abc, abbbc
Was ist der Unterschied zwischen * und .* ?

Sehr wichtig zu verstehen!

  • * ist ein Quantor und allein bedeutungslos – er muss sich auf ein Zeichen davor beziehen. a* heißt: „0 oder mehr a“.
  • . ist ein Zeichen (beliebiges Zeichen). .* heißt: „0 oder mehr beliebige Zeichen“ – also alles.

Beispiel: Du willst alles zwischen <h1> und </h1> finden:

  • Falsch: <h1>*</h1> — Sternchen bezieht sich auf das > davor, matcht nichts Sinnvolles
  • Richtig: <h1>.*</h1> — findet die komplette Überschrift
Warum findet mein Regex nicht das, was ich erwarte?

Die 5 häufigsten Ursachen:

  • Sonderzeichen nicht escaped: . bedeutet „beliebiges Zeichen“. Für einen echten Punkt: \.
  • Kein g-Flag: Ohne g wird nur der erste Treffer gefunden.
  • Groß-/Kleinschreibung: Ohne i-Flag wird Hallo und hallo unterschieden.
  • Greedy-Matching: .* frisst zu viel. Verwende .*? (lazy).
  • Anker fehlen: \d{3} findet auch die ersten 3 Ziffern aus 12345. Mit ^\d{3}$ nur genau 3.
Wie teste ich, ob eine E-Mail-Adresse gültig ist?

Ein einfacher Regex:

^[^\s@]+@[^\s@]+\.[^\s@]+$

Bedeutung Schritt für Schritt:

  • ^ — Zeilenanfang
  • [^\s@]+ — irgendwas, das kein Leerzeichen und kein @ ist
  • @ — das @-Zeichen
  • [^\s@]+ — Domain-Name (wieder kein Leerzeichen/@)
  • \. — ein echter Punkt
  • [^\s@]+ — Top-Level-Domain
  • $ — Zeilenende

Wichtig: Perfekte E-Mail-Validierung mit Regex ist nicht möglich (RFC 5322 ist zu komplex). Der einfache Regex deckt 99% der Fälle ab.

Was sind Gruppen in Klammern (abc)?

Gruppen mit runden Klammern (...) fassen mehrere Zeichen zusammen und erfassen sie separat.

Beispiel: (\d{4})-(\d{2})-(\d{2})

  • Findet 2024-01-15
  • Erfasst Gruppe 1: 2024 (Jahr)
  • Erfasst Gruppe 2: 01 (Monat)
  • Erfasst Gruppe 3: 15 (Tag)

Gruppen kannst du später im Code einzeln abfragen:

match[1] = Jahr, match[2] = Monat, match[3] = Tag.

Es gibt auch non-capturing groups (?:...) – die fassen nur zusammen, erfassen aber nicht.

Wie vermeide ich, dass mein Regex den Server lahmlegt?

ReDoS (Regular Expression Denial of Service) entsteht durch verschachtelte Quantoren, die exponentiell Zeit brauchen.

Gefährliche Muster:

  • (a+)+b — zwei + hintereinander auf überlappende Zeichen
  • (a|a)+b — Alternation mit gleichen Teilen
  • (.*a){10} — quantifizierte Gruppe mit .*

Sichere Muster:

  • a+b — kein verschachteltes +
  • [^a]+ — Zeichenklasse statt (a|b|c)
  • Teste kritische Regex immer mit einem ReDoS-Checker

Faustregel: Kein + oder * direkt auf eine Gruppe, die selbst + oder * enthält.

Gibt es Regex auch in Excel, Google Sheets oder VS Code?

Ja! Regex ist überall präsent:

  • VS Code: Strg+F → .*-Symbol aktivieren
  • Excel: In „Suchen & Ersetzen“ mit Wildcards (eingeschränkt) oder VBA mit vollem Regex
  • Google Sheets: REGEXMATCH, REGEXEXTRACT, REGEXREPLACE
  • Notepad++: Strg+H → Suchmodus „Regulärer Ausdruck“
  • Linux-Terminal: grep -E, sed -E, awk
  • Sublime/Atom: Regex-Suche in allen Editoren
  • Browser-Konsole: text.match(/regex/)

Zusammenfassung

Das Wichtigste in Kürze

  • Regex = Muster zum Suchen, Prüfen, Extrahieren von Text
  • \d, \w, \s = Ziffer, Wortzeichen, Leerraum
  • *, +, ? = 0+, 1+, 0/1-mal wiederholt
  • ^ und $ = Anfang und Ende der Zeile
  • (...) = Gruppe zum Erfassen
  • | = Oder (Alternative)
  • Flags: g = alle Treffer, i = Groß/Klein egal, m = mehrzeilig
  • Use Cases: E-Mail-Validierung, Log-Analyse, Datenextraktion
  • Vorsicht: ReDoS durch verschachtelte Quantoren vermeiden
  • Tipp: Von einfach nach komplex – Stück für Stück aufbauen und testen

Weitere Tools

Regex Cheatsheet

Vollständige Referenz aller Regex-Syntax-Elemente mit Beispielen.

Zum Tool
JSON Formatter & Validator

Formatiere und validiere JSON mit Syntax-Highlighting.

Zum Tool
Hash Generator

MD5, SHA-1, SHA-256 und SHA-512 für Text und Dateien.

Zum Tool
UUID Generator

Generiere UUIDs v1, v4, v5 und v7 für deine Anwendungen.

Zum Tool