Reguläre Ausdrücke einfach erklärt | Regex-Guide
Programmierung Grundlagen

Reguläre Ausdrücke

Muster in Texten suchen, prüfen, extrahieren und ersetzen – Schritt für Schritt erklärt und mit einem interaktiven Regex-Tester zum direkten Ausprobieren.

Für Einsteiger Regex-Syntax JavaScript & Python Interaktiver Tester

🛠️ Empfohlene Tools für Entwickler

Diese Tools nutze ich selbst – sie helfen Ihnen, Ihre Projekte professionell umzusetzen und zu vermarkten.

⚡ ExeOutput for PHP

PHP-Anwendungen in eigenständige Windows-EXE-Dateien kompilieren – auch für Regex-basierte Textverarbeitung ideal.

Jetzt ansehen →

📄 HTML Executable

HTML-Dateien und Websites als eigenständige Windows-EXE-Dateien kompilieren.

Jetzt ansehen →

🔒 XLS Padlock

Excel-Arbeitsmappen als EXE kompilieren und schützen – perfekt für datenbank-gestützte Excel-Lösungen mit Textverarbeitung.

Jetzt ansehen →

🐍 VBA Padlock

VBA-Code kompilieren und Office-Lösungen verkaufen – ohne Source-Code-Weitergabe.

Jetzt ansehen →

📦 Paquet Builder

Professionelle Windows-Installationsprogramme für Ihre Anwendungen erstellen.

Jetzt ansehen →

* Affiliate-Links: Bei einem Kauf über diese Links erhalten wir eine kleine Provision – für Sie entstehen keine zusätzlichen Kosten.

1. Was ist ein regulärer Ausdruck?

Ein regulärer Ausdruck, kurz Regex, beschreibt ein Textmuster. Programme können damit Zeichenfolgen suchen, prüfen, extrahieren, aufteilen oder ersetzen.

Suchen

Alle Postleitzahlen, Datumsangaben oder Produktnummern in einem Text finden.

Prüfen

Kontrollieren, ob eine Eingabe ein gewünschtes Format vollständig erfüllt.

Ersetzen

Mehrfache Leerzeichen vereinheitlichen oder Bestandteile eines Textes neu anordnen.

Vergleich mit einer Suchschablone: Eine normale Suche findet meist einen festen Begriff. Eine Regex beschreibt dagegen eine Form – zum Beispiel „genau fünf Ziffern“ – und findet dadurch viele unterschiedliche Texte, die zu dieser Form passen.

Ein erstes Muster

RegexDeutsche Postleitzahl als Format
^\d{5}$

Das Muster bedeutet: Beginn der Eingabe (^), genau fünf Ziffern (\d{5}) und danach sofort das Ende ($). Es prüft das Format, aber nicht, ob die Postleitzahl tatsächlich vergeben ist.

2. Regex-Varianten verstehen

Reguläre Ausdrücke sehen in vielen Werkzeugen ähnlich aus, sind aber nicht vollständig identisch. JavaScript, Python, PHP, Java, .NET, Texteditoren und Kommandozeilenprogramme verwenden jeweils eine bestimmte Regex-Variante oder „Flavor“.

Gemeinsame Grundlagen

Zeichenklassen, Gruppen, Alternativen, Quantifizierer und Anker funktionieren in vielen Varianten sehr ähnlich.

Unterschiedliche Details

Flags, Unicode-Verhalten, benannte Gruppen, Lookbehind und Ersetzungssyntax können sich unterscheiden.

Für diese Seite: Der interaktive Tester verwendet die Regex-Engine des Browsers, also JavaScript-RegExp. Prüfe ein Muster immer in der Programmiersprache oder Anwendung, in der es später wirklich eingesetzt wird.

3. Zeichen und Zeichenklassen

Ein normales Zeichen steht meistens für sich selbst. Metazeichen besitzen eine besondere Bedeutung und müssen mit einem Backslash maskiert werden, wenn sie wörtlich gesucht werden sollen.

.

Beliebiges Zeichen

Passt normalerweise auf ein Zeichen außer einem Zeilenumbruch.

\d

Ziffer

Findet je nach Regex-Variante eine Ziffer; in JavaScript typischerweise 0 bis 9.

\D

Nicht-Ziffer

Das Gegenstück zu \d.

\s

Leerraum

Passt unter anderem auf Leerzeichen, Tabulatoren und Zeilenumbrüche.

\S

Nicht-Leerraum

Das Gegenstück zu \s.

\w

Wortzeichen

In JavaScript vor allem Buchstaben A–Z, Ziffern und Unterstrich; Umlaute sind nicht zuverlässig enthalten.

[abc]

Auswahl

Passt auf genau eines der Zeichen a, b oder c.

[^abc]

Negierte Auswahl

Passt auf ein Zeichen, das nicht a, b oder c ist.

[0-9]

Bereich

Passt auf eine Ziffer zwischen 0 und 9.

Sonderzeichen wörtlich suchen

Gesuchter TextRegexErklärung
Punkt\.Ohne Backslash würde der Punkt für ein beliebiges Zeichen stehen.
Fragezeichen\?Ohne Maskierung ist es ein Quantifizierer.
Runde Klammer\( und \)Ohne Maskierung bilden Klammern eine Gruppe.
Backslash\\Der erste Backslash maskiert den zweiten.

Unicode-Buchstaben in JavaScript

RegexMit Unicode-Flag
\p{L}+

Mit dem Flag u findet \p{L} Unicode-Buchstaben und erfasst damit auch Wörter wie „Göçmen“, „München“ oder „Crème“ besser als [A-Za-z]+.

4. Quantifizierer – wie oft darf etwas vorkommen?

Quantifizierer beziehen sich auf das direkt vorherige Zeichen, die Zeichenklasse oder die Gruppe.

SyntaxBedeutungBeispiel
*Nullmal oder öfterab*c passt auf ac, abc, abbc.
+Einmal oder öfterab+c passt nicht auf ac.
?Nullmal oder einmalcolou?r passt auf color und colour.
{n}Genau n-mal\d{5} findet fünf Ziffern.
{n,}Mindestens n-mal\w{3,} findet mindestens drei Wortzeichen.
{n,m}Zwischen n- und m-mal\d{2,4} findet zwei bis vier Ziffern.

Gierig, zurückhaltend und besitzergreifend

RegexQuantifizierer-Varianten
# Gierig: nimmt möglichst viel
".*"

# Zurückhaltend: nimmt möglichst wenig
".*?"

# Possessiv: nimmt möglichst viel ohne Backtracking
".*+"

Im Text "eins" und "zwei" kann das gierige Muster vom ersten bis zum letzten Anführungszeichen reichen. Die zurückhaltende Variante beendet den Treffer am frühesten möglichen passenden Anführungszeichen. Der possessive Quantifizierer *+ nimmt so viel wie möglich und gibt nichts zurück – das kann in bestimmten Fällen die Performance verbessern, verändert aber das Suchergebnis.

Präziser ist oft besser: Statt .*? kann für Text in Anführungszeichen häufig "[^"\r\n]*" verwendet werden. Das Muster beschreibt genauer, welche Zeichen erlaubt sind.

5. Anker und Wortgrenzen

Anker konsumieren normalerweise kein Zeichen. Sie prüfen eine Position innerhalb des Textes.

^

Anfang

Prüft den Beginn des Textes oder mit m den Beginn einer Zeile.

$

Ende

Prüft das Ende des Textes oder mit m das Ende einer Zeile.

\b

Wortgrenze

Prüft eine Grenze zwischen Wort- und Nicht-Wortzeichen.

\B

Keine Wortgrenze

Prüft eine Position, die keine Wortgrenze ist.

Suchen oder vollständig validieren?

Im Text suchen

\d{5}

Findet fünf Ziffern auch innerhalb eines längeren Textes.

Adresse: 50667 Köln

Gesamte Eingabe prüfen

^\d{5}$

Akzeptiert nur eine Eingabe, die vollständig aus genau fünf Ziffern besteht.

50667PLZ 50667
Unicode-Hinweis: In JavaScript orientiert sich \b am Begriff des Wortzeichens \w. Bei Sprachen mit Umlauten oder anderen Schriftsystemen kann das Ergebnis deshalb anders ausfallen als erwartet.

6. Gruppen und Alternativen

Gruppen fassen Teile eines Musters zusammen. Sie können wiederholt, als Alternative verwendet oder später als Trefferbestandteil ausgelesen werden.

SyntaxAufgabeBeispiel
(abc)Erfassende GruppeSpeichert den Treffer der Gruppe für spätere Verwendung.
(?:abc)Nicht erfassende GruppeGruppiert, ohne einen nummerierten Gruppenwert anzulegen.
a|bAlternativePasst auf a oder b.
(rot|grün|blau)Gruppierte AuswahlPasst auf genau eines der drei Wörter.
(?<name>...)Benannte GruppeGibt einer Gruppe in unterstützten Varianten einen sprechenden Namen.
(*PRUNE)Backtracking-KontrolleUnterbricht Backtracking an dieser Stelle (PCRE/Perl).

Beispiel: Datum in Teile zerlegen

RegexTag, Monat und Jahr
^(?<tag>\d{2})\.(?<monat>\d{2})\.(?<jahr>\d{4})$

Bei 13.08.2026 enthält die Gruppe tag den Wert 13, monat den Wert 08 und jahr den Wert 2026. Das Muster prüft jedoch noch nicht, ob das Datum im Kalender existiert.

Gruppen sparsam einsetzen: Verwende (?:...), wenn du nur gruppieren möchtest. Benannte Gruppen erleichtern das Verständnis, wenn Werte später ausgelesen werden.

7. Lookaround und Rückverweise

Diese Techniken sind nützlich, aber nicht in jeder Regex-Variante gleich verfügbar. Prüfe deshalb die Unterstützung in deiner Zielumgebung.

SyntaxBezeichnungBedeutung
(?=...)Positiver LookaheadDanach muss das beschriebene Muster folgen.
(?!...)Negativer LookaheadDanach darf das beschriebene Muster nicht folgen.
(?<=...)Positiver LookbehindDavor muss das beschriebene Muster stehen.
(?<!...)Negativer LookbehindDavor darf das beschriebene Muster nicht stehen.
\1 bis \99RückverweisVerlangt erneut denselben Text wie in der ersten erfassenden Gruppe.
${1} / $1Ersetzung mit GruppeVerwendet den Inhalt der Gruppe in der Ersetzung.

🎯 Live-Demo: Lookaround in Aktion

Klick auf einen Button...

Doppeltes Wort finden

RegexMit Rückverweis
\b(\p{L}+)\s+\1\b

Mit den Flags g, i und u kann dieses JavaScript-Muster beispielsweise „die die“ finden. Gruppe 1 speichert das erste Wort; \1 verlangt danach denselben Text erneut.

Zahl nach einem Eurozeichen finden

RegexPositiver Lookbehind
(?<=€)\d+(?:,\d{2})?

8. Erweiterte Regex-Konzepte

Atomic Groups – Backtracking verhindern

RegexAtomic Groups
# Normale Gruppe (Backtracking erlaubt)
(abc|ab)c

# Atomic Group (kein Backtracking)
(?>abc|ab)c

Atomic Groups (?>...) verhindern, dass die Regex-Engine nach einem Match innerhalb der Gruppe zurückgeht und andere Alternativen ausprobiert. Das kann die Performance verbessern und unerwartete Matches verhindern.

Possessive Quantifizierer

QuantifiziererBedeutungBeispiel
*+Nullmal oder öfter (possessiv).*+
++Einmal oder öfter (possessiv).++
?+Nullmal oder einmal (possessiv).?+
{n,m}+Zwischen n- und m-mal (possessiv)\d{2,4}+

Possessive Quantifizierer nehmen so viel wie möglich und geben nichts zurück – sie verbessern oft die Performance, können aber das Suchergebnis verändern.

🎯 Live-Demo: Possessive Quantifizierer

Vergleiche gierigen und possessiven Quantifizierer:

Klick auf einen Button...

9. Flags und Suchmodi

Flags verändern die Arbeitsweise eines Musters. Die Schreibweise und Verfügbarkeit hängt von der verwendeten Programmiersprache ab.

FlagNameWirkung in JavaScript
gglobalSucht alle Treffer statt nur des ersten.
iignore caseIgnoriert Groß- und Kleinschreibung.
mmultiline^ und $ beziehen sich zusätzlich auf einzelne Zeilen.
sdot allDer Punkt . passt auch auf Zeilenumbrüche.
uunicodeVerarbeitet das Muster im Unicode-Modus und ermöglicht Unicode-Eigenschaften wie \p{L}.
ystickySucht genau an der aktuellen Position lastIndex.
JavaScriptLiteral-Schreibweise
const muster = /\p{L}+/giu;
Flag bewusst wählen: g ist für alle Treffer nützlich, kann aber das Verhalten bestimmter JavaScript-Methoden beeinflussen. u ist bei modernen Unicode-Mustern häufig sinnvoll.

10. Praxisnahe Regex-Muster

Die folgenden Muster prüfen hauptsächlich die Form einer Eingabe. Eine fachliche Gültigkeit muss oft zusätzlich im Programm oder über eine externe Bestätigung geprüft werden.

Einfache E-Mail-Form

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

Prüft pragmatisch auf Text, ein @, weiteren Text, einen Punkt und einen abschließenden Teil.

name@domain.dename@domain

Deutsche PLZ als Format

^\d{5}$

Erlaubt genau fünf Ziffern. Ob die Postleitzahl vergeben ist, wird nicht geprüft.

506675066

Datum TT.MM.JJJJ

\b(?:0[1-9]|[12]\d|3[01])\.(?:0[1-9]|1[0-2])\.\d{4}\b

Begrenzt Tag und Monat grob, erkennt aber beispielsweise weiterhin den 31.02.

13.08.202640.18.2026

Flexible Telefonnummer

^\+?[0-9][0-9 ()/-]{6,}$

Erlaubt eine optionale internationale Kennung und häufig verwendete Trennzeichen. Die Nummer wird nicht auf Erreichbarkeit geprüft.

+49 221 123456Telefon ABC

Einfacher Produktcode

^[A-Z]{3}-\d{4}$

Prüft drei Großbuchstaben, einen Bindestrich und vier Ziffern.

WEB-2026web-26

Mehrfache Leerzeichen

[ \t]{2,}

Findet mindestens zwei aufeinanderfolgende Leerzeichen oder Tabulatoren, ohne Zeilenumbrüche zu erfassen.

Hallo   Welt

ISBN-10/13

\b(?:97[89])?\d{9}[\dX]\b

Findet ISBN-Nummern (10 oder 13-stellig).

97838649077911234567890

UUID

\b[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\b

Findet UUIDs (Universally Unique Identifier).

550e8400-e29b-41d4-a716-446655440000

Hex-Farbe

#?[0-9a-f]{6}(?:[0-9a-f]{2})?\b

Findet Hex-Farbcodes (3, 6 oder 8-stellig).

#0f3460#GGG

IPv4-Adresse

\b(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\b

Prüft IPv4-Adressen grob auf das richtige Format.

192.168.1.1999.999.999.999
E-Mail-Adressen: Eine kurze Regex kann nur eine grobe Form prüfen. Ob eine Adresse wirklich existiert und der Person gehört, lässt sich zuverlässig erst durch eine Bestätigungs-E-Mail feststellen.

11. Suchen, extrahieren und ersetzen

Regex wird besonders nützlich, wenn gefundene Gruppen in einem neuen Text wiederverwendet werden.

Namen umstellen

Suchen und ErsetzenErfassende Gruppen
Suchen:   ^(\p{L}+)\s+(\p{L}+)$
Ersetzen: $2, $1

Eingabe:  Murat Göçmen
Ausgabe:  Göçmen, Murat

In JavaScript steht $1 für die erste und $2 für die zweite erfassende Gruppe. Andere Programme können eine abweichende Ersetzungssyntax verwenden.

🎯 Live-Demo: Ersetzung mit Gruppen

Gib einen Namen ein...

Mehrfache Zwischenräume reduzieren

Suchen und ErsetzenText bereinigen
Suchen:   [ \t]{2,}
Ersetzen: ein einzelnes Leerzeichen

Wichtige Ersetzungswerte in JavaScript

SyntaxBedeutung
$&Der vollständige Treffer.
$1 bis $99Der Inhalt einer nummerierten erfassenden Gruppe.
$<name>Der Inhalt einer benannten Gruppe.
$$Ein wörtliches Dollarzeichen.
$`Der Text vor dem Treffer.
$'Der Text nach dem Treffer.

12. Regex in JavaScript und Python

JavaScript: suchen und ersetzen

JavaScriptRegExp
const text = "Köln 50667, Berlin 10115";
const plzMuster = /\b\d{5}\b/g;

const treffer = text.match(plzMuster);
console.log(treffer); // ["50667", "10115"]

const markiert = text.replace(plzMuster, "[PLZ: $&]");
console.log(markiert);

JavaScript: dynamisches Muster

JavaScriptDoppelte Maskierung
const muster = new RegExp("\\d{5}", "g");

In einem JavaScript-String muss der Backslash selbst maskiert werden. Deshalb wird aus dem Regex-Text \d{5} im String "\\d{5}". Bei einem Regex-Literal wie /\d{5}/g ist diese zusätzliche String-Maskierung nicht nötig.

Python: suchen und Gruppen auslesen

Pythonre-Modul
import re

text = "Köln 50667, Berlin 10115"
plz_muster = re.compile(r"\b\d{5}\b")

treffer = plz_muster.findall(text)
print(treffer)  # ['50667', '10115']

markiert = plz_muster.sub(r"[PLZ: \g<0>]", text)
print(markiert)

In Python sind rohe Strings mit dem Präfix r für Regex meist leichter lesbar, weil Backslashes nicht zusätzlich als normale String-Escapes verarbeitet werden.

Benutzertexte maskieren: Wenn ein Suchbegriff von Nutzern stammt und wörtlich gesucht werden soll, darf er nicht ungeprüft als Regex interpretiert werden. Verwende in Python re.escape(); in JavaScript muss eine passende Escape-Funktion für Regex-Sonderzeichen eingesetzt werden.

13. Interaktiver Regex-Tester

Der Tester verwendet JavaScript-RegExp. Wähle ein Beispiel oder gib dein eigenes Muster ein. Fehlerhafte Muster werden abgefangen und als Hinweis angezeigt.

Beispiel auswählen

Ohne umschließende Schrägstriche eingeben.
Zum Beispiel giu.
Bereit – starte den Test.

    Ersetzung testen

    JavaScript-Syntax, zum Beispiel $&, $1 oder $<name>.
    Noch keine Ersetzung ausgeführt.
    Tester-Grenze: Der Browser-Tester zeigt das Verhalten von JavaScript. Dass ein Muster hier funktioniert, garantiert nicht dieselbe Syntax oder dasselbe Ergebnis in Python, PHP, Java, .NET oder einem Texteditor.

    14. Leistung, Wartbarkeit und Sicherheit

    Ein korrekt wirkendes Muster kann bei ungünstiger Struktur und sehr langen Eingaben unnötig langsam werden. Das ist besonders relevant, wenn Texte von außen stammen.

    Präzise Klassen

    Beschreibe erlaubte Zeichen möglichst konkret, statt überall .* einzusetzen.

    Eingaben begrenzen

    Begrenze Länge und Umfang unkontrollierter Eingaben, bevor komplexe Muster darauf angewendet werden.

    Grenzfälle testen

    Teste gültige, ungültige, leere, sehr lange und absichtlich schwierige Eingaben.

    Problematische Verschachtelung vermeiden

    RegexVereinfachtes Warnbeispiel
    # Unnötig verschachtelt und potenziell teuer
    ^(a+)+$
    
    # Für dieselbe einfache Aussage klarer
    ^a+$
    ReDoS-Risiko: Manche mehrdeutigen, stark verschachtelten Muster können auf speziell gewählten langen Eingaben sehr viel Rechenzeit verbrauchen. Bei öffentlich erreichbaren Formularen und APIs sollten Muster geprüft, Eingabelängen begrenzt und Laufzeiten überwacht werden.

    Wann Regex nicht die beste Wahl ist

    • Komplex verschachteltes HTML oder XML sollte mit einem passenden Parser verarbeitet werden.
    • Kalenderdaten sollten nach der Formatprüfung mit einer Datumsbibliothek validiert werden.
    • E-Mail-Existenz lässt sich nicht durch Regex beweisen.
    • Für umfangreiche Programmiersprachen oder verschachtelte Syntax ist ein Parser meist robuster.

    15. Checkliste für ein zuverlässiges Regex-Muster

    Hake die erledigten Punkte ab. Die Auswahl bleibt nur während dieses Seitenaufrufs erhalten.

    0 von 10 Punkten erledigt

    16. Häufige Fehler und Lösungen

    Der Punkt findet zu viel

    Ursache: . bedeutet „beliebiges Zeichen“ und nicht einen wörtlichen Punkt.

    Lösung: Einen echten Punkt mit \. maskieren.

    Nur der erste Treffer erscheint

    Ursache: In JavaScript fehlt häufig das globale Flag g.

    Lösung: Prüfen, ob wirklich alle Treffer benötigt werden, und gegebenenfalls g ergänzen.

    Umlaute werden nicht erkannt

    Ursache: [A-Za-z] und JavaScript-\w decken Umlaute nicht zuverlässig ab.

    Lösung: Im Unicode-Modus beispielsweise \p{L} mit Flag u prüfen.

    Muster funktioniert nur im Tester

    Ursache: Tester und Zielanwendung verwenden unterschiedliche Regex-Varianten oder String-Escapes.

    Lösung: Muster, Flags und Maskierung direkt in der Zielumgebung testen.

    Lookbehind funktioniert nicht

    Ursache: Lookbehind wird nicht von allen Regex-Varianten unterstützt (z.B. JavaScript vor ES2018).

    Lösung: Prüfen, ob die Zielumgebung Lookbehind unterstützt; sonst alternative Konstruktion verwenden.

    17. Übungen zum Mitmachen

    Nutze für die Übungen den interaktiven Tester und beginne jeweils mit einem möglichst einfachen Muster.

    Übung 1 · Einstieg

    Zahlen finden

    Finde alle ganzen Zahlen im Text „Artikel 12 kostet 49 Euro, Artikel 7 kostet 8 Euro“.

    Übung 2 · Einstieg

    Produktcode prüfen

    Prüfe vollständig das Format: zwei Großbuchstaben, Bindestrich, vier Ziffern.

    Übung 3 · Mittel

    Namen extrahieren

    Finde Wörter mit Unicode-Buchstaben aus „Murat, Göçmen, Köln, Python3“ und beobachte, wie Ziffern behandelt werden.

    Übung 4 · Mittel

    Datum gruppieren

    Erstelle benannte Gruppen für Tag, Monat und Jahr und untersuche die Trefferdetails.

    Übung 5 · Fortgeschritten

    Hex-Farben finden

    Finde alle Hex-Farbcodes im Text „#0f3460, rgb(15,52,96), #F5A623, #GGG“.

    Übung 6 · Fortgeschritten

    Lookaround anwenden

    Finde alle Zahlen, denen ein Eurozeichen vorausgeht, im Text „Preis: 19,99 €, 49,99 €, 29 Euro“.

    Lösungsvorschläge

    Lösung zu Übung 1 anzeigen

    \d+ mit dem Flag g findet jede zusammenhängende Ziffernfolge.

    Lösung zu Übung 2 anzeigen

    ^[A-Z]{2}-\d{4}$ prüft die gesamte Eingabe auf das gewünschte Format.

    Lösung zu Übung 3 anzeigen

    \p{L}+ mit den Flags g und u findet zusammenhängende Unicode-Buchstaben. Bei „Python3“ entsteht dabei der Treffer „Python“.

    Lösung zu Übung 4 anzeigen

    ^(?<tag>\d{2})\.(?<monat>\d{2})\.(?<jahr>\d{4})$ legt drei benannte Gruppen an.

    Lösung zu Übung 5 anzeigen

    #?[0-9a-f]{6}(?:[0-9a-f]{2})?\b mit gi findet Hex-Farbcodes.

    Lösung zu Übung 6 anzeigen

    (?<=€)\d+(?:,\d{2})? (Lookbehind) oder \b\d+(?:,\d{2})?\s*€\b (Alternative ohne Lookbehind).

    18. Häufige Fragen zu regulären Ausdrücken

    Was bedeutet „Regex“?

    Regex ist die gebräuchliche Kurzform für „regular expression“, auf Deutsch „regulärer Ausdruck“. Gemeint ist ein Muster zur Verarbeitung von Text.

    Warum funktionieren manche Muster in einem anderen Programm nicht?

    Programme können unterschiedliche Regex-Varianten verwenden. Syntax, Flags, Unicode-Verhalten, Lookbehind und Ersetzungssyntax unterscheiden sich teilweise. Zusätzlich kann die String-Schreibweise einer Programmiersprache weitere Backslashes verlangen.

    Kann Regex eine E-Mail-Adresse vollständig validieren?

    Eine Regex kann die Form grob oder sehr detailliert prüfen. Ob das Postfach existiert und von der Person kontrolliert wird, lässt sich damit nicht beweisen. Dafür ist eine Bestätigungs-E-Mail erforderlich.

    Was ist der Unterschied zwischen * und +?

    * erlaubt null oder mehr Wiederholungen. + verlangt mindestens eine Wiederholung.

    Wann brauche ich ^ und $?

    Wenn die gesamte Eingabe dem Muster entsprechen soll, werden Anfang und Ende häufig mit diesen Ankern begrenzt. Für die Suche innerhalb eines längeren Textes sind sie meist nicht erforderlich.

    Warum sind doppelte Backslashes nötig?

    Wenn eine Regex als normaler String geschrieben wird, verarbeitet zuerst die Programmiersprache den Backslash und danach die Regex-Engine. In JavaScript wird deshalb aus dem Regex \d im String häufig "\\d". Regex-Literale und rohe Python-Strings reduzieren diese Doppelmaskierung.

    Sind reguläre Ausdrücke immer die schnellste Lösung?

    Nein. Einfache, präzise Muster sind oft effizient. Komplexe, mehrdeutige Verschachtelungen können jedoch langsam werden. Für strukturierte oder verschachtelte Formate ist ein Parser häufig verständlicher und robuster.

    Wie lerne ich Regex am besten?

    Baue Muster schrittweise auf, teste jede Ergänzung mit passenden und unpassenden Beispielen und erkläre jedes Zeichen in eigenen Worten. Ein kurzes verständliches Muster ist meist wertvoller als eine schwer wartbare Ein-Zeilen-Lösung.

    Was ist der Unterschied zwischen Lookahead und Lookbehind?

    Lookahead (?=...) prüft, ob nach der aktuellen Position ein bestimmtes Muster folgt. Lookbehind (?<=...) prüft, ob vor der aktuellen Position ein bestimmtes Muster steht.

    Wann sollte ich Atomic Groups verwenden?

    Atomic Groups (?>...) sind nützlich, wenn du Backtracking verhindern möchtest – zum Beispiel bei komplexen Mustern, bei denen die Regex-Engine sonst viele Alternativen durchprobiert. Das kann die Performance verbessern.

    Datenschutz-Übersicht
    digitale-start-hilfe.de

    Auf dieser Website werden Cookies verwendet, um deine Nutzererfahrung zu verbessern. Du kannst in den {setting}Einstellungen{/setting} mehr erfahren oder Cookies jederzeit ablehnen.

    Eine vollständige Liste aller Cookies findest du in unserer Cookie-Erklärung.

    Weitere Informationen findest du in unserer Datenschutzerklärung.

    Notwendige Cookies & Chatbot

    Diese Cookies sind für den Betrieb der Website unbedingt erforderlich und können nicht deaktiviert werden. Dazu gehören auch grundlegende Funktionen wie der WebChatAgent (Chatbot) von WebChatAgent.com, der die direkte Kommunikation mit uns ermöglicht.