Regex Data Generator
Generera slumpmässig data som matchar dina reguljära uttryck
Inmatning
Utdata
Readme
Vad är ett reguljärt uttryck?
Ett reguljärt uttryck (regex) är en sekvens av tecken som definierar ett sökmönster. Reguljära uttryck utvecklades ursprungligen inom formell språkteori och används nu i praktiskt taget alla programmeringsspråk och textbearbetningsverktyg för att matcha, söka och manipulera strings. Ett mönster som [a-z]+@[a-z]+\.com beskriver strukturen hos en enkel e-postadress — bokstäver, följt av ett @-tecken, fler bokstäver, en punkt och den bokstavliga stringen "com."
Utöver sökning kan reguljära uttryck även fungera som mallar för att generera data. Genom att vända på matchningsprocessen kan en regex-motor producera slumpmässiga strings som överensstämmer med ett givet mönster. Detta är särskilt användbart för mjukvarutestning, prototypframtagning och att fylla databaser med realistiskt utseende testdata utan att förlita sig på verklig användarinformation.
Verktygsbeskrivning
Det här verktyget genererar slumpmässiga strings som matchar vilket reguljärt uttryck du än anger. Ange ett regex-mönster — eller välj bland inbyggda förinställningar — och producera omedelbart upp till 1 000 matchande värden. Det stöder all standard regex-syntax inklusive teckenklass, kvantifierare, grupper, alternation och backreferences. Resultatet kan användas direkt som testfixtures, seed-data eller indata till valideringsskript.
Funktioner
- Inbyggda förinställningar för vanliga format: e-post, IPv4, UUID, amerikanskt telefonnummer, datum, hex-färg, registreringsskylt och MAC-adress
- Anpassad regex-inmatning som accepterar fullständig JavaScript-syntax för reguljära uttryck
- Justerbart antal från 1 till 1 000 genererade värden per körning
- Kontroll av maximal upprepning för att begränsa hur många gånger obegränsade kvantifierare (
+,*,{n,}) expanderar, vilket förhindrar alltför långa strings - Läge för unika värden som tar bort dubbletter från resultatet och varnar om mönstrets entropi är för låg för att producera tillräckligt många distinkta värden
Användningsområden
- Mjukvarutestning: Generera hundratals giltigt utseende e-postadresser, UUID:n eller IP-adresser att använda som testfixtures eller seed-data för automatiserade testsviter utan att exponera verklig användarinformation.
- Databasifyllning: Fyll snabbt utvecklings- eller stagingdatabaser med realistisk testdata som uppfyller kolumnbegränsningar och valideringsregler.
- Lära sig regex: Experimentera med syntax för reguljära uttryck genom att skriva ett mönster och omedelbart se vilka strings det kan producera, vilket gör det lättare att förstå kvantifierare, teckenklass och gruppering.
Alternativ förklarade
| Alternativ | Beskrivning |
|---|---|
| Förinställning | Välj ett inbyggt mönster för vanliga dataformat, eller välj "Anpassad" för att skriva ditt eget regex. Att välja en förinställning fyller automatiskt i regex-mönsterfältet. |
| Regex-mönster | Det reguljära uttryck som används för att generera data. Stöder teckenklass ([a-z]), kvantifierare ({3,8}, +, *), grupper och alternation ((com|net|org)) samt specialtokens (\d, \w). |
| Antal | Hur många strings som ska genereras, mellan 1 och 1 000. |
| Maximal upprepning | Begränsar expansionen av obegränsade kvantifierare. Till exempel, med maximal upprepning satt till 10 kommer mönstret [a-z]+ att producera strings på högst 10 tecken. Intervall: 1–100. |
| Endast unika värden | När aktiverat säkerställs att inga dubbletter av strings visas i resultatet. Om mönstret inte kan producera tillräckligt många unika värden visas en varning med det faktiska antalet genererade värden. |
Tips
- Börja med en förinställning och modifiera den för att lära dig hur regex-mönster översätts till genererad data.
- Om du behöver utdata med fast längd, använd exakta kvantifierare som
{8}istället för intervall som{5,10}. - Sänk värdet för maximal upprepning när du använder
+eller*för att hålla genererade strings korta och läsbara. - Aktivera läget för unika värden när du genererar identifierare eller nycklar som inte får upprepas, men använd ett mönster med tillräcklig variation för att undvika att nå taket för unikhet.
Vanliga frågor
Kan jag använda lookaheads eller lookbehinds? Generatorn är baserad på biblioteket randexp.js, som stöder de flesta JavaScript regex-funktioner. Lookaheads och lookbehinds stöds inte för generering eftersom de inte definierar teckens innehåll.
Varför fick jag färre resultat än begärt? Med "Endast unika värden" aktiverat kanske mönstret inte har tillräckligt många möjliga permutationer för att producera det begärda antalet distinkta strings. Försök att bredda teckenklass eller öka kvantifierarnas intervall.
Är resultatet verkligt slumpmässigt? Resultatet är pseudoslumpmässigt. Varje körning producerar olika resultat, men slumpmässigheten är inte kryptografiskt säker. Använd inte det här verktyget för att generera lösenord eller säkerhetstokens.