Regex-tester

Skriv et regulært uttrykk, lim inn testteksten din, og se hvert treff lyse opp mens du skriver. Slutt å gjette om mønsteret ditt fungerer — se det i aksjon.

Hjalp denne kalkulatoren deg?

Hva er Regex-tester?

En regulæruttrykk-tester lar deg teste regulære uttrykk mot eksempeltekst i sanntid. Essensielt for utviklere som bygger tekstbehandling, validering og søkefunksjonalitet i applikasjonene sine.

Når du bør bruke denne kalkulatoren

  • Validering av brukerinput — test mønstre for e-post-, telefon-, nettadresse- eller datovalidering før distribusjon.
  • Feilsøking av mislykket matching — lim inn regulæruttrykket ditt og testteksten for å se nøyaktig hvor og hvorfor matching mislykkes.
  • Læring av regulæruttrykk — eksperimenter med mønstre interaktivt for å bygge intuisjon for regulæruttrykk-syntaks.
  • Utplukkelse av data fra tekst — bygg mønstre for å finne og fange spesifikke understrenger fra større tekster.
  • Søk og erstatt — test mønstre før du bruker dem i kode eller tekstredigerere for søk-og-erstatt-operasjoner.
  • Bygging av skjemavalidatorer — verifiser at valideringsregulæruttrykket ditt matcher alle gyldige inndata og avviser alle ugyldige.

Trinn:

  1. Skriv inn ditt regulæruttrykk-mønster (f.eks. \d{3}-\d{4}).
  2. Velg flagg: g (global), i (skille mellom store og små bokstaver), m (flerlinje), s (punktum alt).
  3. Skriv eller lim inn testtekst i tekstområdet.
  4. Se alle treff markert med tellingen.
  5. Bruk hjelpetavlepanelet for rask referanse hvis du trenger hjelp med regulæruttrykk-syntaks, og kopier det endelige mønsteret for å bruke i koden din.

Formel

Mønster + Flagg → RegExp → Utfør mot testtekst → Treff-array Vanlige mønstre: - \d+ → ett eller flere siffer - [a-zA-Z]+ → én eller flere bokstaver - ^…$ → ankere for start/slutt - (…) → fangstgrupper

Bruksområder

  • Validering av e-postadresser, telefonnumre og nettadresser
  • Utplukkelse av mønstre fra tekst (datoer, priser, ID-er)
  • Søk og erstatt-operasjoner i tekstredigerere
  • Inndatavalidering i webskjemaer

Nøkkelfordeler

  • Test regulæruttrykks-mønstre i sanntid
  • Se alle treff uthevet
  • Støtte for vanlige flagg
  • Gratis uten påmelding påkrevd
  • Fungerer helt i nettleseren din uten at data sendes til noen server, slik at testdataene og mønstrene dine forblir helt private og tilgjengelige frakoblet
  • Gratis å bruke uten påmelding, ingen annonser og ingen bruksbegrensninger — ideelt for rask regulæruttrykk-testing under utviklingsøkter

Profftips

  • Test alltid regulæruttrykket ditt med både matchende og ikke-matchende tekst
  • Bruk online referanser for regulæruttrykk for komplekse mønstre
  • Start enkelt og legg til kompleksitet gradvis
  • Bruk navngitte fangstgrupper for lesbarhet
  • Når du bygger mønstre for produksjonsbruk, test grensecaser som tomme strenger, veldig lange strenger, Unicode-tegn og spesialtegn som kan forårsake uventet atferd

Vanlige feil å unngå

  • Ikke escape av spesialtegn (bruk \. i stedet for .)
  • Glemme g-flagget når du forventer flere treff
  • Bruke grådige kvantifiserere når late kvantifiserere trengs
  • Overkomplisere mønstre — enklere er ofte bedre

Nøkkelbegreper forklart

Mønster: Søkeut {3} {4} trykk
Flagg: Alternativer som endrer søkeatferd
Treff: Funnet forekomst av mønster
Fangstgruppe: Parentesert del av mønster
Kvantifiserer: Et tegn som spesifiserer hvor mange ganger det foregående elementet må forekomme — * betyr null eller flere, + betyr én eller flere, ? betyr null eller én, og {n}, {n,}, {n,m} spesifiserer nøyaktige eller intervalltall

Relaterte konsepter

  • Regulært uttrykk (regex): En tegnsekvens som definerer et søkemønster for å matche tekst.
  • Fangstgruppe: En parentesert del av et regulært uttrykk som trekker ut bestemte deler av et treff.
  • Kvantifiserer: Et tegn som spesifiserer hvor mange ganger det foregående elementet må forekomme (f.eks. +, *, ?, {n}).
  • Anker: En nullbredde-påstand som matcher en posisjon i tekst i stedet for et tegn (^ for start, $ for slutt).
  • Fremoversyn/Bakoversyn: Nullbredde-påstander som sjekker for mønstre foran eller bak gjeldende posisjon uten å forbruke tekst.

Eksempel

Mønster: ^[\w.-]+@[\w.-]+\.\w{2,}$ med testtekst: "Kontakt oss på hello@example.com eller support@test.org" matcher begge e-postadressene og viser dem i resultatlisten.

Tolke resultatene dine

Start med å se på antall treff og uthevet tekst. Hvis du forventer treff men ser ingen, sjekk: (1) er det globale flagget (g) satt? Uten det blir bare det første treffet funnet. (2) Escaperer du spesialtegn? Et bokstavelig punktum må escapes som \.. (3) Er ankerne dine korrekte? ^ matcher start av streng, $ matcher slutt. Fangstgruppepanelet viser hva hver parentesert del av mønsteret ditt matchet. Navngitte grupper (som bruker (?...)) gjør komplekse mønstre mer lesbar. Bruk grupper til å trekke ut bestemte deler av et treff — for eksempel å fange nummerkombina sjonen separat fra resten av et telefonnummer. Vanlige regulæruttrykks-feil å se opp for: grådige kvantifiserere som matcher for mye tekst (bruk late kvantifiserere *? eller +? i stedet), glemme flerlinjeflagget når du matcher på tvers av linjer, og bruke . i stedet for [\s\S] når du vil matche ethvert tegn inkludert linjeskift.

Ofte stilte spørsmål

Hva er et regulært uttrykk?
Et regulært uttrykk er en sekvens av tegn som definerer et søkemønster. Det brukes til mønstergjenkjenning i tekst, som å finne e-postadresser, validere inndata eller trekke ut data fra strenger.
Hvilken regulæruttrykksmotor bruker dette verktøyet?
Dette verktøyet bruker JavaScripts innebygde RegExp-motor, som støtter de fleste standard regulæruttrykksfunksjoner inkludert grupper, fremsynsoperatører, kvantifiserere og tegnklasser.
Hva er vanlige regulæruttrykks-flagg?
g (global): Finn alle treff, ikke bare det første. i (skille mellom store og små bokstaver): Ignorer skille mellom store og små bokstaver. m (flerlinje): ^ og $ matcher linjegrenser. s (punktum alt): . matcher linjeskift.
Hvorfor matcher ikke regulæruttrykket mitt?
Vanlige problemer: mangler g-flagget for flere treff, ikke escape av spesialtegn (., *, +, ?, [, ], (, )), eller feil bruk av kvantifiserere.
Hva er regulære uttrykk (regex)?
Regulære uttrykk er mønstre som brukes til å finne tegnkombinasjoner i strenger. De er kraftige verktøy for søk, validering og tekstmanipulering. Regulære uttrykk bruker spesialtegn som . * + ? ^ $ [] () {} | til å definere mønstre.
Hva betyr ^-symbolet i et regulært uttrykk?
I regulære uttrykk har ^ to betydninger: inni en tegnklasse [^abc] betyr det 'ikke' (negasjon). Utenfor en tegnklasse forankrer det mønsteret til starten av strengen. For eksempel matcher ^hello bare 'hello' i begynnelsen av strengen.
Hva er forskjellen mellom * og + i regulære uttrykk?
Begge er kvantifiserere: * matcher null eller flere forekomster (valgfritt), mens + matcher én eller flere forekomster (nødvendig). Så 'ab*c' matcher 'ac', 'abc', 'abbc' osv., mens 'ab+c' matcher 'abc', 'abbc', men IKKE 'ac'.
Hvordan matcher jeg et bokstavelig punktum (.) i et regulært uttrykk?
Punktumet (.) er et spesialtegn som betyr 'et hvilket som helst tegn'. For å matche et bokstavelig punktum, escaper du det med en backslash: \. For eksempel matcher mønsteret www\.example\.com URL-en nøyaktig, ikke 'wwwXexampleYcom'.
Hva er en fangstgruppe?
Fangstgrupper er deler av regulæruttrykket omsluttet av parenteser (). De 'fanger' den matchede teksten for senere bruk. For eksempel fanger (\d{4})-(\d{2})-(\d{2}) år, måned og dag separat fra en datostreng som 2024-01-15.
Hva er forskjellen mellom grådig og lat matching?
Grådige kvantifiserere (* + ? {}) matcher så mye tekst som mulig. Late kvantifiserere (*? +? ?? {}) matcher så lite som mulig. For eksempel matcher <.*> hele '<div>content</div>' (grådig), mens <.*?> matcher '<div>' og '</div>' separat (lat).
Hvordan validerer jeg en e-post med et regulært uttrykk?
Et grunnleggende e-postmønster: ^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$ Dette matcher de fleste gyldige e-postadresser, men dekker ikke alle spesialtilfeller. For produksjonsbruk bør du vurdere et dedikert bibliotek for e-postvalidering som håndterer internasjonale domener og spesialtegn.

Oppdag flere verktøy

Ferske utvalg fra hele verktøybiblioteket vårt.