◯ Kostenlos: 5 Nutzungen/Tag • Zurückgesetzt in 16h 13m
Entwicklung & Technik

Regex‑Generator

Wandle eine rein‑englische Beschreibung in einen funktionierenden regulären Ausdruck für JavaScript, Python, PCRE, Go, Java oder .NET um — mit einer Token‑für‑Token‑Erklärung, Testfällen und den Randfällen, die das Muster bewusst einschließt oder ausschließt.

Mehr erfahren

Der Regex‑Generator erzeugt einen regulären Ausdruck aus einer Beschreibung dessen, was passen soll, im jeweiligen Flavor, den du tatsächlich nutzt — JavaScript, Python, PCRE, Go’s RE2, Java oder .NET — und beweist ihn anschließend: Jeder Token wird erklärt, deine Beispiele für Zeichenketten, die passen bzw. nicht passen dürfen, werden geprüft, und das Muster wird mit zusätzlichen Testfällen, einem Nutzungsschnipsel in deiner Sprache und einem Hinweis auf die Randfälle, die es bewusst ausschließt, geliefert. Außerdem wird dir mitgeteilt, wenn eine Anforderung in deinem Flavor nicht erfüllbar ist, etwa Look‑Behind in Go, anstatt stillschweigend ein Muster zu erzeugen, das nicht kompiliert.

0 / 3000
0 / 10000
0 / 10000

✓ Kostenlos nutzbar — ohne Registrierung, ohne Kreditkarte.

Entwickler

Nur Firmen‑E‑Mail‑Adressen

Registrierungs‑Validierung, die kostenlose Webmail‑Domänen ablehnt

Vorschau von Eingabe und Ausgabe anzeigen

Eingabe

Was soll das Muster erfassen?
Email addresses on the company domains acme.com and acme.co.uk, case-insensitive. Reject everything else, including gmail and addresses with nothing before the @.
Regex‑Flavor
JavaScript / TypeScript
Beispiele, die passen müssen (jeweils eine Zeile)
[email protected] [email protected]
Beispiele, die nicht passen dürfen (jeweils eine Zeile)
[email protected] @acme.com
Strenge
Praktisch (lesbar, deckt gängige Fälle ab)

Ausgabe (Auszug)

```javascript
/^[a-z0-9._%+-]+@acme\.(?:com|co\.uk)$/i
```

**Flags:** `i` — Domänen und lokale Teile werden ohne Beachtung der Groß‑Kleinschreibung verglichen.

| Token | Bedeutung |
|---|---|
| `^` … `$` | der gesamte String muss die Adresse sein |
| `[a-z0-9._%+-]+` | lokaler Teil: ein oder mehrere Buchstaben, Ziffern oder die üblichen Satzzeichen |
| `@acme\.` | wörtlich @acme. — der Punkt ist escaped |
| `(?:com\|co\.uk)` | genau einer der beiden Firmendomänen |

| Eingabe | Erwartet | Warum |
|---|---|---|
| `[email protected]` | Treffer | einfacher lokaler Teil, erlaubte Domain |
| `[email protected]` | Treffer | Punkt im lokalen Teil, zweite Domain |
| `[email protected]` | Kein Treffer | Domain nicht in der Liste |
| `@acme.com` | Kein Treffer | leerer lokaler Teil |
| `[email protected]` | Kein Treffer | verankert, es darf nichts folgen |…
Alle Zielgruppen

ISO‑8601‑Kalenderdaten

Datumsangaben aus Log‑Zeilen extrahieren, bevor sie geparst werden

Vorschau von Eingabe und Ausgabe anzeigen

Eingabe

Was soll das Muster erfassen?
ISO calendar dates like 2026-09-20 anywhere inside a line of text. Month 01-12, day 01-31. Do not match 2026-13-01 or 26-09-20.
Regex‑Flavor
Python (re)
Beispiele, die passen müssen (jeweils eine Zeile)
deployed 2026-09-20 at 05:01 2024-02-29
Beispiele, die nicht passen dürfen (jeweils eine Zeile)
2026-13-01 26-09-20
Strenge
Strikt (verwirft alles Ungültige)

Ausgabe (Auszug)

```python
r"(?<!\d)(\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])(?!\d)"
```

**Flags:** keine. Das Muster ist nicht verankert, weil das Datum innerhalb einer Zeile steht.

| Token | Bedeutung |
|---|---|
| `(?<!\d)` | nicht von einer Ziffer vorausgehend — verwirft `12026-09-20` |
| `(\d{4})` | vierstelliges Jahr, erfasst |
| `(0[1-9]\|1[0-2])` | Monat 01‑12 |
| `(0[1-9]\|[12]\d\|3[01])` | Tag 01‑31 |
| `(?!\d)` | nicht von einer Ziffer gefolgt |

**Edge cases:** Das Muster kennt die Monatslängen nicht — `2026-02-31` matcht. Validieren Sie mit `datetime.date.fromisoformat()` nach dem Extrahieren, wie das Anwendungsbeispiel zeigt…

Ihre Regex‑Generator-Ergebnisse erscheinen hier

Erwarten Sie saubere Codeblöcke mit Kommentaren sowie eine kurze Erklärung der Änderungen.

Anleitung Regex‑Generator

  1. Beschreibe, was das Muster in einfacher Sprache erfassen soll, einschließlich dessen, was es ablehnen muss — 'Firmen‑E‑Mail‑Adressen, nicht kostenlose Webmail' ist besser als 'E‑Mails'.
  2. Wähle den Flavor, in dem du es ausführen willst. Go, JavaScript, Python, Java, .NET und PCRE unterscheiden sich hinsichtlich Look‑Around‑Unterstützung, Unicode‑Verarbeitung und Escape‑Regeln.
  3. Füge ein paar Zeichenketten ein, die passen müssen, und ein paar, die nicht passen dürfen, jeweils eine Zeile. Das Muster wird gegen jede davon geprüft.
  4. Wähle die Strenge: 'Praktisch' für lesbare Muster, die normale Eingaben abdecken, 'Strikt' für Validierung, 'Nachgiebig' wenn du breit erfasst und später filterst.

Anwendungsfälle

1

Formular‑Eingaben wie Postleitzahlen, Kennzeichen oder interne ID‑Formate validieren

2

Daten, Rechnungsnummern oder Bestellreferenzen aus Log‑Zeilen und E‑Mails extrahieren

3

Ein Suchen‑und‑Ersetzen für eine Massen‑Bereinigung in einem Editor oder einem Migrations‑Skript erstellen

4

Ein altes Muster, das ein Kollege im Code hinterlassen hat, erklären, indem du es als Beschreibung einfügst

5

Ein Muster von einem Flavor in einen anderen konvertieren, wenn ein Skript von Python nach Go migriert wird

Tipps für beste Ergebnisse

  • Geben Sie Beispiele, die nicht passen dürfen — sie schärfen ein Muster stärker als Beispiele, die passen müssen.
  • Wenn Sie es innerhalb einer Sprachzeichenkette benötigen, fragen Sie nach dieser Variante: Das Escaping ist Teil der Antwort.
  • Für benutzerseitige Validierung wählen Sie „Strict“ und lesen Sie vor dem Ausliefern den Abschnitt zu Randfällen.
  • Ein Muster mit verschachtelter Wiederholung bei nicht vertrauenswürdigen Eingaben kann Ihren Server blockieren; die Ausgabe warnt Sie, wenn dieses Risiko besteht.

Häufig gestellte Fragen

Welche Regex‑Varianten werden unterstützt?

JavaScript und TypeScript, das re‑Modul von Python, PCRE (PHP, Ruby, Perl), Go‑s RE2‑Engine, Java und .NET. Das Muster wird als Literal in der gewählten Sprache geschrieben, mit dem jeweiligen Escaping, das die Sprache benötigt.

Testet es das Muster?

Jedes von Ihnen bereitgestellte Beispiel wird in einer Testtabelle mit dem erwarteten Ergebnis und dem Grund aufgeführt. Das Tool fügt außerdem Randfälle hinzu — leere Eingabe, Leerzeichen, Nahe‑Treffer — damit Sie sehen können, was durchrutschen würde.

Warum sagt es, dass meine Anforderung in Go unmöglich ist?

Go‑s RE2‑Engine garantiert lineare Laufzeit beim Matching und hat daher keine Look‑Ahead-, Look‑Behind‑ oder Rückverweise. Wenn die Beschreibung einen davon benötigt, weist das Tool darauf hin und bietet das nächstliegende Muster, das RE2 kompilieren kann, meist mit einer kleinen Prüfung im Code.

Was ist der Unterschied zwischen Practical, Strict und Lenient?

Practical‑Muster sind lesbar und decken die Eingaben ab, die Sie tatsächlich sehen. Strict‑Muster lehnen jede ungültige Zeichenkette ab, auf Kosten von Länge und Lesbarkeit — verwenden Sie sie für Validierung. Lenient‑Muster erfassen breit, sodass Sie später im Code filtern können — verwenden Sie sie für die Extraktion aus unübersichtlichem Text.

Kann es einen bereits vorhandenen Regex erklären?

Ja. Fügen Sie das vorhandene Muster in die Beschreibung mit „explain this“ ein, und die Ausgabe geht es Token für Token durch, listet auf, was es matcht, und weist auf jedes Risiko von katastrophalem Backtracking hin.

🔒
Ihre Privatsphäre ist geschützt

Wir speichern Ihre Eingabe und das Ergebnis höchstens 90 Tage lang, um den Dienst zu betreiben, Missbrauch zu verhindern und Ihnen, wenn Sie angemeldet sind, Ihren Verlauf anzuzeigen. Verarbeitet werden sie von den KI-Anbietern, die in unserer Datenschutzerklärung aufgeführt sind. Wir verkaufen sie nicht.

Ähnliche Tools

Agent testen

API-Automatisierungs-AgentAutomatisierung beschreiben → REST/Webhook-Rezept → curl + Python + Node Beispiele → auf AICT-API gemappt.Agent testen →

Ähnlicher Workflow

Markenidentität aufbauenVom Konzept zum stimmigen visuellen SystemWorkflow starten →

Mehr lesen