Zum Hauptinhalt springen
Bethemesh

Reguläre Ausdrücke testen

Teste reguläre Ausdrücke und Treffer direkt im Browser. Alle Verarbeitung erfolgt lokal in deinem Browser.

  • Zwischenablage
  • Export

Dieses Widget einbetten

Passe die Darstellung an, prüfe die Vorschau und kopiere anschließend den Code.

Vorschau

Art des Einbettungscodes

Zu kopierender Code

Responsive und automatisch von Bethemesh in der Größe angepasst.

Muster

War dieses Werkzeug hilfreich?

Wie funktioniert dieses Tool?

Teste einen regulären JavaScript-Ausdruck auf Text und prüfe vollständige Treffer mit Startposition. Muster und Optionen stehen in getrennten Feldern, damit Regex-Syntax nicht mit einem Codeliteral verwechselt wird. Die Auswertung bleibt im Browser und läuft in einem separaten Worker mit zwei Sekunden Zeitbudget und höchstens 10 000 Treffern. Aufwendige Suchen lassen sich dadurch stoppen, ohne die Hauptoberfläche zu blockieren.

Das Muster wird an den RegExp-Konstruktor des Browsers übergeben. Gib etwa \d+ direkt ein, ohne /.../-Begrenzer oder doppelte Maskierung einer Codezeichenkette. Optionen wie i, m, s und u folgen der JavaScript-Unterstützung deines Browsers. Unbekannte, doppelte oder unvereinbare Optionen erzeugen Fehler.

Der Tester sammelt Treffer global und ergänzt g, falls es fehlt. y behält die Bedeutung einer an die aktuelle Position gebundenen Suche statt einer freien Suche im Text. Angezeigt werden vollständige Treffer; Capture-Gruppen erscheinen nicht getrennt.

Jede Zeile enthält Ergebnisnummer, Treffertext und Startindex in Klammern. Indizes beginnen bei null und zählen JavaScript-UTF-16-Einheiten. Mit u kann ein Emoji einen Treffer bilden und trotzdem zwei Indexeinheiten belegen. Positionen zählen deshalb nicht universell sichtbare Zeichen.

Der Worker wird nach Ablauf des Zwei-Sekunden-Budgets beendet. Auch der Start zählt dazu; ein Timeout beweist allein keine ungültige Syntax. Nach 10 000 Treffern wird mit ausdrücklichem Hinweis begrenzt. Änderungen an Text, Muster oder Optionen verwerfen alte Ergebnisse. Zurücksetzen stoppt die aktuelle Aufgabe.

Die angezeigten Positionen beziehen sich auf JavaScript-Zeichenfolgen und damit auf UTF-16-Codeeinheiten. Ein Emoji kann mehr als eine Position beanspruchen. Berücksichtige das, wenn du Treffer mit sichtbaren Zeichenpositionen vergleichst. Für wiederverwendbare Muster solltest du außerdem Fälle ohne Treffer, leere Eingaben und unerwartet lange Texte prüfen, statt nur ein positives Beispiel zu bestätigen.

So verwenden Sie dieses Tool

  1. Muster ohne Begrenzer eingeben

    Schreibe Ausdruck und Optionsbuchstaben getrennt. Der Quelltext gehört ins große Textfeld, nicht ins Musterfeld.

  2. Repräsentativen Ausschnitt testen

    Beginne klein und prüfe Werte sowie Indizes. Vereinfache bei Timeout Alternativen und Quantifizierer vor einem Versuch mit weniger Text.

  3. Beobachtungen weiterverwenden

    Kopiere oder lade Treffertext herunter und teste in der späteren Laufzeitumgebung. Der Export ist kein Ersetzungsprogramm.

Anwendungsfälle

Extraktion vor der Integration prüfen

Teste repräsentative Zeilen und Startpositionen. Die Suche ersetzt keinen Text und registriert keine Projektregel.

Suchoptionen vergleichen

Prüfe i für Groß-/Kleinschreibung oder m für Zeilenanker. Übertrage das Verhalten nicht ungeprüft auf PCRE oder SQL.

Unicode-Indexprobleme nachvollziehen

Unterscheide mit zusätzlichen Unicode-Zeichen Treffertext und JavaScript-Index für die spätere Auswahl von Teilzeichenketten.

Beispiele

Zwei Vorkommen mit Indizes finden

Ada mit g findet beide Wörter. In Ada and Ada beginnt der erste Treffer bei 0 und der zweite bei 8.

Eingabe

{
  "pattern": "Ada",
  "flags": "g",
  "text": "Ada and Ada"
}

Ergebnis

1. Ada [0]
2. Ada [8]

Unicode-Treffer und UTF-16-Index unterscheiden

Mit . und gu ist 😀 ein ganzer Treffer bei 1. B beginnt bei 3, weil das Emoji zwei UTF-16-Einheiten belegt.

Eingabe

{
  "pattern": ".",
  "flags": "gu",
  "text": "A😀B"
}

Ergebnis

1. A [0]
2. 😀 [1]
3. B [3]

Tipps und bewährte Vorgehensweisen

  • Behalte Fälle ohne Treffer: Sie zeigen häufig teures Backtracking.
  • Treffer überlappen nicht automatisch. Für überlappende Startpunkte brauchst du eine passende Konstruktion.
  • Ein passendes Beispiel beweist keine vollständige E-Mail-, URL- oder Fachformatvalidierung.
  • Extrahierte Werte können sensible Daten enthalten. Prüfe den Export vor dem Teilen.

Quellen und Referenzen

Häufig gestellte Fragen

Soll ich /meinmuster/g ins Ausdrucksfeld kopieren?

Nein. Gib meinmuster als Ausdruck und g als Option ein. Schrägstriche werden nicht automatisch als JavaScript-Literalbegrenzer entfernt.

Warum erscheinen mehrere Treffer ohne g?

Der Tester ergänzt g zur Sammlung von Vorkommen. Er zeigt eine Liste und bildet keinen einzelnen nichtglobalen exec-Aufruf nach.

Werden Capture-Gruppen exportiert?

Die Ausgabe enthält vollständige Treffer und Startindizes. Gruppen und ihre Namen werden in dieser Version nicht separat ausgegeben.

Warum wurde die Suche unterbrochen?

Sie überschritt zwei Sekunden. Manche Quantifiziererkombinationen verursachen starkes Backtracking. Reduziere Text und vereinfache das Muster. Das Beenden des Workers hält die Oberfläche bedienbar.

Entspricht das Ergebnis PCRE oder Python?

Nein. Syntax und Optionen stammen aus JavaScript RegExp deines Browsers. Andere Engines können sich bei Konstrukten, Indizes und Unicode-Regeln unterscheiden.

Verwandte Werkzeuge

Werkzeuge, die diesem ähnlich sind oder es ergänzen.

Ähnliche Werkzeuge

Ersetze Textstellen in einem eingefügten oder importierten Dokument.

EntwicklungNeuDieses Werkzeug verwenden

Formatiere JavaScript, TypeScript oder JSX für eine bessere Lesbarkeit, ohne Code auszuführen. Die Verarbeitung erfolgt lokal im Browser.

EntwicklungDieses Werkzeug verwenden

Teste JSONPath-Ausdrücke gegen JSON-Daten.

EntwicklungDieses Werkzeug verwenden