Regex-datagenerator
Generer tilfeldige data som samsvarer med dine regulære uttrykk
Inndata
Utdata
Les meg
Hva er et regulært uttrykk?
Et regulært uttrykk (regex) er en sekvens av tegn som definerer et søkemønster. Regulære uttrykk ble opprinnelig utviklet for formell språkteori, og brukes nå i praktisk talt alle programmeringsspråk og tekstbehandlingsverktøy for å matche, søke i og manipulere strings. Et mønster som [a-z]+@[a-z]+\.com beskriver strukturen til en enkel e-postadresse — bokstaver, etterfulgt av et @-symbol, flere bokstaver, et punktum og den bokstavelige string-en "com."
Utover søk kan regulære uttrykk også fungere som maler for å generere data. Ved å reversere matchingsprosessen kan en regex-motor produsere tilfeldige strings som samsvarer med et gitt mønster. Dette er særlig nyttig for programvaretesting, prototyping og fylling av databaser med realistisk testdata uten å bruke ekte brukerinformasjon.
Verktøybeskrivelse
Dette verktøyet genererer tilfeldige strings som samsvarer med et regulært uttrykk du oppgir. Skriv inn et regex-mønster — eller velg blant innebygde forhåndsinnstillinger — og produser umiddelbart opptil 1 000 samsvarende verdier. Det støtter all standard regex-syntaks, inkludert tegnklasser, kvantifiserere, grupper, alternering og tilbakereferanser. Resultatet kan brukes direkte som testdata, seed-data eller inndata for valideringsskript.
Funksjoner
- Innebygde forhåndsinnstillinger for vanlige formater: e-post, IPv4, UUID, amerikansk telefonnummer, dato, hex-farge, bilskilt og MAC-adresse
- Egendefinert regex-inndata som aksepterer full JavaScript-syntaks for regulære uttrykk
- Justerbart antall fra 1 til 1 000 genererte verdier per kjøring
- Kontroll av maks repetisjon for å begrense hvor mange ganger ubegrensede kvantifiserere (
+,*,{n,}) utvides, slik at unødvendig lange strings unngås - Kun unike verdier-modus som fjerner duplikater fra resultatet og advarer dersom mønsterets entropi er for lav til å produsere nok distinkte verdier
Bruksområder
- Programvaretesting: Generer hundrevis av tilsynelatende gyldige e-postadresser, UUID-er eller IP-adresser til bruk som testdata eller seed-data for automatiserte testsuiter, uten å eksponere ekte brukerinformasjon.
- Database-seeding: Fyll raskt ut utviklings- eller staging-databaser med realistisk testdata som samsvarer med kolonnebegrensninger og valideringsregler.
- Lære regex: Eksperimenter med syntaks for regulære uttrykk ved å skrive et mønster og umiddelbart se hvilke strings det kan produsere, noe som gjør det enklere å forstå kvantifiserere, tegnklasser og gruppering.
Forklaring av alternativer
| Alternativ | Beskrivelse |
|---|---|
| Forhåndsinnstilling | Velg et innebygd mønster for vanlige dataformater, eller velg «Egendefinert» for å skrive din egen regex. Når du velger en forhåndsinnstilling, fylles regex-mønsterfeltet automatisk ut. |
| Regex-mønster | Det regulære uttrykket som brukes til å generere data. Støtter tegnklasser ([a-z]), kvantifiserere ({3,8}, +, *), grupper og alternering ((com|net|org)), samt spesielle tokens (\d, \w). |
| Antall | Hvor mange strings som skal genereres, mellom 1 og 1 000. |
| Maks repetisjon | Begrenser utvidelsen av ubegrensede kvantifiserere. Med maks repetisjon satt til 10 vil for eksempel mønsteret [a-z]+ produsere strings på maksimalt 10 tegn. Område: 1–100. |
| Kun unike verdier | Når dette er aktivert, sikres det at ingen dupliserte strings vises i resultatet. Dersom mønsteret ikke kan produsere nok unike verdier, vises en advarsel med det faktiske antallet som ble generert. |
Tips
- Start med en forhåndsinnstilling og endre den for å lære hvordan regex-mønstre omsettes til genererte data.
- Hvis du trenger utdata med fast lengde, bruk eksakte kvantifiserere som
{8}i stedet for intervaller som{5,10}. - Senk verdien for maks repetisjon når du bruker
+eller*for å holde genererte strings korte og lesbare. - Aktiver unik-modus når du genererer identifikatorer eller nøkler som ikke må gjentas, men bruk et mønster med nok variasjon for å unngå å nå grensen for unikhet.
Ofte stilte spørsmål
Kan jeg bruke lookaheads eller lookbehinds? Generatoren er basert på biblioteket randexp.js, som støtter de fleste JavaScript regex-funksjoner. Lookaheads og lookbehinds støttes ikke for generering, siden de ikke definerer tegninnhold.
Hvorfor fikk jeg færre resultater enn forespurt? Med «Kun unike verdier» aktivert kan det hende at mønsteret ikke har nok mulige permutasjoner til å produsere det forespurte antallet distinkte strings. Prøv å utvide tegnklassene eller øke kvantifisererområdene.
Er resultatet virkelig tilfeldig? Resultatet er pseudo-tilfeldig. Hver kjøring produserer forskjellige resultater, men tilfeldigheten er ikke kryptografisk sikker. Ikke bruk dette verktøyet til å generere passord eller sikkerhets-tokens.