Menu

Regex-Tester

Reguläre Ausdrücke mit animierter Treffer-Hervorhebung testen.

Zuletzt aktualisiert

Flags
TesttextText einfügen, um zu beginnen
TrefferKeine Treffer
Treffer erscheinen hier — Indizes, Capture-Gruppen und Zählungen, live.

Was ist ein Regex-Tester?

Mit einem Regex-Tester schreibst du einen regulären Ausdruck und siehst sofort, was er im Beispieltext trifft. Entwickler nutzen Regex (reguläre Ausdrücke), um Eingaben zu validieren, Daten aus Strings zu ziehen, Logs zu durchsuchen, Text zu säubern, Editor-Befehle zu bauen oder Suchen-und-Ersetzen-Regeln zu definieren.

Auf den ersten Blick wirkt Regex kryptisch, weil ein paar Zeichen sehr viel Bedeutung tragen. Ein Live-Tester nimmt dir die Angst: Jedes neue Zeichen aktualisiert die markierten Treffer und Capture-Gruppen, und du kannst so lange experimentieren, bis das Pattern genau das tut, was du willst.

Programmiersprachen verwenden leicht unterschiedliche Regex-Engines (JavaScript, PCRE, Python, Java, Go, .NET). Die Grundlagen — Zeichen, Zeichenklassen, Quantifizierer, Anker und Gruppen — funktionieren überall gleich. Erst bei den Profi-Features (Lookbehind, benannte Gruppen, possessive Quantifizierer) gehen die Engines auseinander.

Was du beim Testen mitnimmst

  • Ein Pattern beschreibt die *Form* des Textes, nicht seine Bedeutung. \d+ trifft eine Folge von Ziffern — ob die Zahl inhaltlich Sinn ergibt, weiß es nicht.
  • Flags ändern das Verhalten: g findet alle Treffer, i ignoriert Groß-/Kleinschreibung, m lässt ^ und $ an Zeilenenden greifen, s erlaubt . auch über Zeilenumbrüche.
  • Capture-Gruppen (...) ziehen Teile eines Treffers heraus, statt nur zu prüfen, ob der ganze String passt — unverzichtbar fürs Parsen.

So nutzt du den Regex-Tester Schritt für Schritt

  1. Pattern eintippen

    Schreib deinen regulären Ausdruck ins Pattern-Feld. Die umschließenden /-Slashes weglassen — die sind JavaScript-Literal-Syntax und gehören nicht zum Pattern selbst.

  2. Passende Flags aktivieren

    In der Praxis brauchst du am häufigsten g (alle Treffer) und i (Groß-/Kleinschreibung egal). m ist für zeilenweise Anker, s damit . auch Zeilenumbrüche trifft.

  3. Testtext einfügen

    Wirf Beispieltext ins Test-Feld. Treffer werden beim Tippen sofort hervorgehoben, und unter der Trefferliste tauchen die Capture-Gruppen auf.

  4. Trefferpanel lesen

    Jeder Treffer zeigt seine Position, den Volltext und alle erfassten Gruppen. So prüfst du, ob das Pattern wirklich nur das fängt, was es soll — und nichts darüber hinaus.

  5. Solange feilen, bis es sitzt

    Quantifizierer enger ziehen, Anker setzen (^, $) oder literale Zeichen escapen (\., \?), bis Treffer und Gruppen exakt das liefern, was dein Code braucht.

Regex-Spickzettel

Die 80 % von Regex, die du in 99 % der Fälle brauchst. Lesezeichen setzen — schneller frischst du die Syntax nicht auf. Die komplette Grammatik findest du im MDN-Leitfaden zu regulären Ausdrücken.

TokenBedeutungBeispiel
.Beliebiges Einzelzeichen (außer Zeilenumbruch)a.c trifft abc, a-c
\d \DZiffer / keine Ziffer\d+ trifft 123
\w \WWortzeichen (Buchstabe/Ziffer/_) / kein Wortzeichen\w+ trifft hello_1
\s \SWhitespace / kein Whitespace\s+ trifft Leerzeichen und Tabs
[abc]Eins von a, b oder c[aeiou] trifft einen Vokal
[^abc]Keins von a, b oder c[^0-9] trifft alles außer Ziffern
* + ?0+, 1+, 0 oder 1 vom Vorherigena+ trifft a, aaa
{n} {n,m}Genau n / zwischen n und m\d{3,5} 3 bis 5 Ziffern
^ $Anfang / Ende des Strings (oder der Zeile mit m)^Error Zeile beginnt mit Error
(...)Capture-Gruppe(\d+) fängt die Ziffern ein
(?:...)Nicht-erfassende Gruppe(?:foo|bar) Gruppe ohne Capture
a|bAlternative — a oder byes|no
\bWortgrenze\bcat\b trifft cat, aber nicht cats

Regex-Beispiele zum Ausprobieren

Einfache E-Mail-Form treffen

Pattern
^[\w.+-]+@[\w-]+\.[\w.-]+$
Text

learner@coddy.tech

Das fängt die Grundform irgendwas@irgendwas.irgendwas ein. Die echte E-Mail-Spezifikation ist deutlich großzügiger als dieses Pattern — für Formulare lieber type="email" und eine serverseitige Prüfung verwenden.

Alle Zahlen aus einem Satz herausziehen

Pattern
\d+
Text

Lesson 12 has 3 tasks and 2 quizzes.

Mit dem g-Flag findest du jede Ziffernfolge: 12, 3, 2. \d+ ist Regex-Sprech für „eine oder mehrere Ziffern“.

ID per Capture-Gruppe aus einer URL ziehen

Pattern
/users/(\d+)
Text

/users/42/profile

Der gesamte Treffer ist /users/42, und die Capture-Gruppe (\d+) liefert nur die 42. Über Capture-Gruppen *nutzt* du einen Regex-Treffer im Code überhaupt erst sinnvoll.

Greedy vs. lazy Quantifizierer

Greedy
<.+>
Lazy
<.+?>
Text

<b>hello</b>

Die greedy-Variante schluckt den kompletten String <b>hello</b>, weil .+ so viel mitnimmt, wie nur geht. Die lazy-Variante (+?) stoppt am ersten > und trifft deshalb nur <b> und </b>.

Häufige Regex-Fehler

  • Sonderzeichen nicht escapen: ., ?, +, (, ), [, ], {, }, \, ^, $, |. Wenn du sie wörtlich meinst, gehört ein \ davor.
  • Ein Pattern bauen, das mit einem Beispiel klappt — aber bei realen Daten mit Extra-Leerzeichen, Zeilenumbrüchen oder fehlenden Feldern auseinanderfällt.
  • .* greedy einsetzen und dabei viel mehr fangen als gewollt — stattdessen .*? oder eine spezifischere Zeichenklasse nehmen.

Regex-FAQ

Was ist Regex?
Regex ist die Kurzform von *regular expression*, also regulärem Ausdruck — eine kompakte Mustersprache zum Treffen von Text. Das gleiche Konzept gibt es in fast jeder Programmiersprache und in vielen Editoren und Kommandozeilen-Tools.
Wie schreibe ich einen regulären Ausdruck?
Fang mit den literalen Zeichen an, die definitiv vorkommen, und ersetze dann die variablen Stellen durch Zeichenklassen (\d, \w, [abc]) und Quantifizierer (*, +, ?, {n,m}). Mit einem Regex-Tester iterierst du, bis das Pattern exakt die Fälle trifft, die du brauchst.
Was bedeutet \w in Regex?
\w trifft ein Wortzeichen — also einen Buchstaben, eine Ziffer oder einen Unterstrich. \W ist das Gegenstück (alles, was kein Wortzeichen ist). Was genau dazuzählt, hängt von der Engine und vom Unicode-Flag ab.
Warum trifft mein Regex zu viel?
Quantifizierer sind standardmäßig greedy — .* schnappt sich so viel wie möglich. Wechsle auf einen lazy Quantifizierer (.*?) oder verwende eine spezifischere Zeichenklasse, damit das Pattern dort stoppt, wo du es willst.
Ist JavaScript-Regex das Gleiche wie jeder andere Regex?
Die Grundlagen sind identisch, die Engines unterscheiden sich aber. JavaScript, PCRE, Pythons re, Java, Go und .NET unterstützen jeweils leicht unterschiedliche Flags und fortgeschrittene Features (Lookbehind-Unterstützung, benannte Gruppen, possessive Quantifizierer).
Sollten Einsteiger Regex lernen?
Ja — Schritt für Schritt. Starte mit Literalen, Zeichenklassen, Quantifizierern, Ankern, Flags und Capture-Gruppen. Lookarounds, benannte Gruppen und bedingte Regex hebst du dir für später auf.

Mehr erfahren

Weitere Entwickler-Tools

Lerne mit Coddy zu programmieren

LOS GEHT'S