Regulære uttrykk (regex) er kraftige mønstre for å finne, matche og trekke ut tekst. De brukes i programmering, datavalidering, søk-og-erstatt-operasjoner og logganalyse. Utfordringen er at regex-syntaks kan være vanskelig å få riktig. Den gratis regex-testeren lar deg eksperimentere i sanntid slik at du kan se nøyaktig hva mønsteret ditt matcher.
Hva du trenger
- Et mønster du vil teste, eller et tekstmatchingproblem du vil løse
- En nettleser (Chrome, Firefox, Safari eller Edge)
- Ingen konto eller installasjon nødvendig
Trinn-for-trinn-guide
Åpne regex-testeren
Gå til regex-testeren. Du vil se to hovedområder: ett for det regulære uttrykksmønsteret ditt og ett for testteksten du vil matche mot.
Skriv regex-mønsteret ditt
Skriv inn et regulært uttrykk i mønsterfeltet. Start enkelt og bygg opp kompleksitet. Begynn for eksempel med et bokstavelig ord som hei for å matche den nøyaktige teksten, og raffiner deretter mønsteret med spesialtegn for å matche bredere mønstre.
Skriv inn testtekst
Lim inn eller skriv eksempeltekst i testområdet. Ta med eksempler som skal matche og eksempler som ikke skal det. Verktøyet fremhever alle treff i sanntid mens du skriver, slik at du umiddelbart kan se om mønsteret fungerer riktig.
Raffiner og verifiser
Juster mønsteret og se treffene oppdateres øyeblikkelig. Legg til kanttilfeller i testteksten — uvanlige inndata, grensebetingelser og vanskelige formater — for å forsikre deg om at regex håndterer dem riktig. Når du er fornøyd, kopier mønsteret inn i koden eller verktøyet ditt.
Greit å vite Regex-testeren kjører helt i nettleseren din. Ingen data sendes til noen server, slik at du trygt kan teste mønstre mot sensitiv tekst som e-postadresser, loggfiler eller personlige data.
Grunnleggende regex-syntaks
| Symbol | Betydning | Eksempel |
|---|---|---|
. |
Et enkelt tegn | h.t matcher «hat», «hit», «hot» |
* |
Null eller flere av forrige | ab*c matcher «ac», «abc», «abbc» |
+ |
En eller flere av forrige | ab+c matcher «abc», «abbc» men ikke «ac» |
? |
Null eller en av forrige | colou?r matcher «color» og «colour» |
\d |
Et siffer (0–9) | \d{3} matcher «123», «456» |
\w |
Et ord-tegn | \w+ matcher «hallo», «test123» |
\s |
Mellomrom | hallo\sverden matcher «hallo verden» |
^ |
Starten på strengen | ^Hei matcher «Hei verden» |
$ |
Slutten på strengen | verden$ matcher «Hei verden» |
[abc] |
Et tegn i settet | [aeiou] matcher en vokal |
(...) |
Fangstgruppe | (ab)+ matcher «ab», «abab» |
Vanlige mønstre du kan prøve
Kopier disse mønstrene inn i regex-testeren og eksperimenter med dem.
E-postadresse
[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}
Matcher standard e-postformater som bruker@eksempel.no og fornavn.etternavn@firma.co.uk. Test det med både gyldige og ugyldige e-postformater for å se hvordan det håndterer kanttilfeller.
URL
https?://[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}(/[^\s]*)?
Matcher HTTP- og HTTPS-URL-er som https://eksempel.no og http://side.org/sti/side. s? gjør «s» i «https» valgfri.
Telefonnummer (norsk format)
(\+47[-.\s]?)?\d{2}[-.\s]?\d{2}[-.\s]?\d{2}[-.\s]?\d{2}
Matcher ulike norske telefonformater: +47 22 12 34 56, 22123456 og lignende varianter.
Tips Når du bygger et regex, start med det enkleste mønsteret som matcher målteksten og legg deretter til begrensninger én om gangen. Å prøve å skrive et komplekst regex på én gang er mye vanskeligere enn å bygge det trinnvis mens du ser treffene oppdateres i sanntid.
Vanlige feil og hvordan du unngår dem
Glemme å unnslippe spesialtegn. Tegn som ., *, +, ?, (, ), [, ], {, } har spesiell betydning i regex. For å matche dem bokstavelig, prefix dem med en omvendt skråstrek: \. matcher et punktum, \( matcher en parentes.
Være for grådig. Som standard matcher * og + så mye tekst som mulig. Hvis du vil ha det korteste treffet, legg til ? etter dem: .*? matcher så lite som mulig.
Ikke forankre mønsteret ditt. Uten ^ og $ vil et mønster som \d{3} matche tre påfølgende sifre hvor som helst i strengen, inkludert inne i lengre tall. Bruk ankere når du trenger å matche hele strengen.
Viktig Regex-syntaks varierer litt mellom programmeringsspråk og verktøy. Et mønster som fungerer i JavaScript kan oppføre seg annerledes i Python eller PHP. Test alltid det endelige mønsteret i språket eller miljøet der du skal bruke det.
Ofte stilte spørsmål
Hva er regex-flagg?
Flagg endrer hvordan mønsteret brukes. Vanlige flagg inkluderer g (global — finn alle treff, ikke bare det første), i (uten hensyn til store/små bokstaver) og m (flerlinje — ^ og $ matcher linjegrenser, ikke bare strenggrenser). Regex-testeren lar deg veksle disse flaggene.
Kan jeg bruke regex for søk og erstatning?
Ja. De fleste tekstredigeringsprogrammer og programmeringsspråk støtter regex-basert finn og erstatt. Fangstgrupper (...) lar deg referere til matchet tekst i erstatningsstrengen.
Hvordan matcher jeg på tvers av flere linjer?
Bruk s-flagget (dotall) for å få . til å matche linjeskifttegn, eller bruk [\s\S] som et plattformuavhengig alternativ som matcher alle tegn inkludert linjeskift.
Neste steg
Nå som du kan bygge og teste regex-mønstre, prøv å bruke dem i koden din, tekstredigeringsprogrammet eller kommandolinjeverktøyene. For andre utviklerverktøy, sjekk ut cron-parseren for planleggingsuttrykk eller JSON-formateringen for arbeid med strukturerte data.