Regex Data Generator
Zufällige Daten generieren, die Ihren regulären Ausdrücken entsprechen
Eingabe
Ausgabe
Readme
Was ist ein regulärer Ausdruck?
Ein regulärer Ausdruck (Regex) ist eine Zeichenfolge, die ein Suchmuster definiert. Ursprünglich für die formale Sprachtheorie entwickelt, werden reguläre Ausdrücke heute in nahezu jeder Programmiersprache und jedem Textverarbeitungswerkzeug verwendet, um strings zu finden, zu durchsuchen und zu bearbeiten. Ein Muster wie [a-z]+@[a-z]+\.com beschreibt die Struktur einer einfachen E-Mail-Adresse — Buchstaben, gefolgt von einem @-Symbol, weiteren Buchstaben, einem Punkt und dem wörtlichen string „com".
Über die Suche hinaus können reguläre Ausdrücke auch als Vorlage zur Datengenerierung dienen. Durch Umkehrung des Abgleichprozesses kann eine Regex-Engine zufällige strings erzeugen, die einem bestimmten Muster entsprechen. Dies ist besonders nützlich für Softwaretests, Prototyping und das Befüllen von Datenbanken mit realistisch aussehenden Testdaten, ohne auf echte Nutzerdaten angewiesen zu sein.
Beschreibung des Tools
Dieses Tool generiert zufällige strings, die zu einem beliebigen regulären Ausdruck passen. Geben Sie ein Regex-Muster ein — oder wählen Sie aus integrierten Voreinstellungen — und erzeugen Sie sofort bis zu 1.000 passende Werte. Es unterstützt die gesamte Standard-Regex-Syntax, einschließlich Zeichenklassen, Quantifizierer, Gruppen, Alternativen und Rückverweise. Die Ausgabe kann direkt als Test-Fixtures, Seed-Daten oder Eingabe für Validierungsskripte verwendet werden.
Funktionen
- Integrierte Voreinstellungen für gängige Formate: E-Mail, IPv4, UUID, US-Telefonnummer, Datum, Hex-Farbe, Kennzeichen und MAC-Adresse
- Benutzerdefinierte Regex-Eingabe, die die vollständige JavaScript-Regex-Syntax unterstützt
- Einstellbare Anzahl von 1 bis 1.000 generierten Werten pro Durchlauf
- Maximale Wiederholungssteuerung, um zu begrenzen, wie oft unbegrenzte Quantifizierer (
+,*,{n,}) expandieren, und so übermäßig lange strings zu verhindern - Nur-eindeutige-Werte-Modus, der die Ausgabe dedupliziert und warnt, wenn die Entropie des Musters zu gering ist, um genügend unterschiedliche Werte zu erzeugen
Anwendungsfälle
- Softwaretests: Generieren Sie Hunderte von gültig aussehenden E-Mail-Adressen, UUIDs oder IP-Adressen als Test-Fixtures oder Seed-Daten für automatisierte Test-Suites, ohne echte Nutzerdaten preiszugeben.
- Datenbankbefüllung: Befüllen Sie Entwicklungs- oder Staging-Datenbanken schnell mit realistischen Testdaten, die den Spalteneinschränkungen und Validierungsregeln entsprechen.
- Regex-Lernen: Experimentieren Sie mit der Regex-Syntax, indem Sie ein Muster schreiben und sofort sehen, welche strings es erzeugen kann — so lassen sich Quantifizierer, Zeichenklassen und Gruppierungen leichter verstehen.
Erklärung der Optionen
| Option | Beschreibung |
|---|---|
| Voreinstellung | Wählen Sie ein integriertes Muster für gängige Datenformate oder wählen Sie „Benutzerdefiniert", um einen eigenen Regex zu schreiben. Die Auswahl einer Voreinstellung füllt das Regex-Musterfeld automatisch aus. |
| Regex-Muster | Der reguläre Ausdruck, der zur Datengenerierung verwendet wird. Unterstützt Zeichenklassen ([a-z]), Quantifizierer ({3,8}, +, *), Gruppen und Alternativen ((com|net|org)) sowie spezielle tokens (\d, \w). |
| Anzahl | Wie viele strings generiert werden sollen, zwischen 1 und 1.000. |
| Maximale Wiederholung | Begrenzt die Expansion unbegrenzter Quantifizierer. Beispielsweise erzeugt das Muster [a-z]+ bei einer maximalen Wiederholung von 10 strings mit höchstens 10 Zeichen. Bereich: 1–100. |
| Nur eindeutige Werte | Wenn aktiviert, wird sichergestellt, dass keine doppelten strings in der Ausgabe erscheinen. Wenn das Muster nicht genügend eindeutige Werte erzeugen kann, wird eine Warnung mit der tatsächlich generierten Anzahl angezeigt. |
Tipps
- Beginnen Sie mit einer Voreinstellung und passen Sie diese an, um zu verstehen, wie Regex-Muster in generierte Daten übersetzt werden.
- Wenn Sie eine Ausgabe mit fester Länge benötigen, verwenden Sie exakte Quantifizierer wie
{8}anstelle von Bereichen wie{5,10}. - Reduzieren Sie den Wert für die maximale Wiederholung bei der Verwendung von
+oder*, um generierte strings kurz und lesbar zu halten. - Aktivieren Sie den Eindeutigkeitsmodus, wenn Sie Bezeichner oder Schlüssel generieren, die sich nicht wiederholen dürfen — verwenden Sie jedoch ein Muster mit ausreichend Variation, um die Eindeutigkeitsgrenze nicht zu erreichen.
FAQ
Kann ich Lookaheads oder Lookbehinds verwenden? Der Generator basiert auf der randexp.js-Bibliothek, die die meisten JavaScript-Regex-Funktionen unterstützt. Lookaheads und Lookbehinds werden für die Generierung nicht unterstützt, da sie keinen Zeicheninhalt definieren.
Warum habe ich weniger Ergebnisse als angefordert erhalten? Wenn „Nur eindeutige Werte" aktiviert ist, verfügt das Muster möglicherweise nicht über genügend mögliche Permutationen, um die gewünschte Anzahl unterschiedlicher strings zu erzeugen. Versuchen Sie, die Zeichenklassen zu erweitern oder die Quantifiziererbereiche zu vergrößern.
Ist die Ausgabe wirklich zufällig? Die Ausgabe ist pseudozufällig. Jeder Durchlauf erzeugt unterschiedliche Ergebnisse, die Zufälligkeit ist jedoch nicht kryptografisch sicher. Verwenden Sie dieses Tool nicht zur Generierung von Passwörtern oder Sicherheits-tokens.