Skip to content

Regex-tegn forklart

Alle kjerne-tokenene i regex: ankre, tegnklasser, kvantorer, grupper og flagg. Hva hvert av dem betyr, med et konkret treff. Hurtigreferansen som hører til Regex Tester-verktøyet.

Regex-tegn settes sammen: stabl et anker, en tegnklasse og en kvantor for å bygge et mønster. ^ festes mot en start, \d treffer et siffer, og {2,4} bestemmer hvor mange ganger. Sett dem sammen til ^\d{2,4}$ for å treffe en hel streng med to til fire siffer. Les et mønster fra venstre mot høyre, ett token om gangen. Regex Tester-verktøyet lar deg prøve alle disse tokenene direkte mot din egen tekst.

Referansetabell · 55 oppføringerÅpne verktøyet regex-tester →
55 of 55 rows
Ankre
Treffer posisjonen ved starten av strengen, eller starten på en linje med flagget m.^He → He
Treffer posisjonen ved slutten av strengen, eller slutten på en linje med flagget m.lo$ → lo
Treffer en ordgrense, posisjonen mellom et ordtegn og et tegn som ikke er et ordtegn.\bcat\b → cat
Treffer en ikke-ordgrense, posisjonen mellom to ordtegn eller to tegn som ikke er ordtegn.\Bar → ar
Tegnklasser
Treffer et vilkårlig enkelttegn bortsett fra linjeskift, med mindre s-flagget er satt.a.c → abc
Treffer et vilkårlig siffer, fra 0 til og med 9.\d → 7
Treffer et vilkårlig tegn som ikke er et siffer.\D → a
Treffer et vilkårlig ordtegn: en bokstav, et siffer eller en understrek.\w → _
Treffer et vilkårlig tegn som ikke er et ordtegn.\W → !
Treffer et vilkårlig blanktegn: et mellomrom, en tabulator eller et linjeskift.a\sb → a b
Treffer et vilkårlig tegn som ikke er et blanktegn.\S → a
Treffer et vilkårlig av tegnene som er oppført inni klammeparentesene.[aeiou] → e
Treffer et vilkårlig tegn som ikke er et av dem som er oppført inni klammeparentesene.[^aeiou] → s
Treffer et enkelttegn i det oppgitte intervallet, fra a til z.[a-z] → m
Treffer et vilkårlig enkelttegn inkludert linjeskift, den vanlige måten å skrive en prikk som også dekker linjeskift.[\s\S] → \n
Treffer et vilkårlig unicode-bokstavtegn fra ethvert skriftsystem, når u-flagget er satt.\p{L} → é
Treffer et vilkårlig unicode-talltegn fra ethvert skriftsystem, når u-flagget er satt.\p{N} → ٣
Escape: treffer ett enkelt linjeskifttegn.\n → line feed
Escape: treffer ett enkelt tabulatortegn.\t → tab
Escape: treffer ett enkelt vognreturtegn.\r → carriage return
Treffer det enkelttegnet som har den oppgitte tosifrede heksadesimalkoden.\x41 → A
Treffer det enkelttegnet som har det oppgitte heksadesimale kodepunktet, når u-flagget er satt.\u{1F600} → 😀
Snitt mellom klasser, med v-flagget: treffer tegn som er med i begge mengdene samtidig.[[a-z]&&[^aeiou]] → t
Kvantorer
Treffer det forrige tokenet null eller flere ganger.ab* → abbb
Treffer det forrige tokenet én eller flere ganger.a+ → aaa
Treffer det forrige tokenet null eller én gang, og gjør det valgfritt.colou?r → color
Treffer det forrige tokenet nøyaktig n ganger.a{3} → aaa
Treffer det forrige tokenet n eller flere ganger.a{2,} → aaaa
Treffer det forrige tokenet fra n til m ganger, begge grensene inkludert.a{2,4} → aaa
Lat kvantor: treffer det forrige tokenet null eller flere ganger og tar så få som mulig.<.*?> on <a><b> → <a>
Lat kvantor: treffer det forrige tokenet én eller flere ganger og tar så få som mulig.\d+? on 123 → 1
Lat kvantor: treffer det forrige tokenet null eller én gang, og foretrekker null.ab?? on ab → a
Lat kvantor: treffer det forrige tokenet fra n til m ganger og tar så få som mulig.a{1,3}? on aaa → a
Possessiv kvantor (PCRE): treffer det forrige tokenet null eller flere ganger og beholder det, uten backtracking for å prøve andre oppdelinger..*+a on aaa → no match
Grupper og alternasjon
En fangende gruppe: treffer sekvensen og husker den for backreferanser.(ab)+ → abab
En ikke-fangende gruppe: treffer sekvensen uten å huske den.(?:ab)+ → abab
Positiv lookahead: treffer hvis de neste tegnene er abc, uten å konsumere dem.a(?=b) → a
Negativ lookahead: treffer hvis de neste tegnene ikke er abc, uten å konsumere dem.a(?!b) → a
Backreferanse: treffer nøyaktig den teksten som den fangende gruppen 1 fanget.(a)\1 → aa
Alternasjon: treffer enten uttrykket før vertikalstreken eller det etter.cat|dog → dog
En navngitt fangende gruppe: treffer sekvensen og husker den under det oppgitte navnet.(?<year>\d{4}) → year = 2026
Positiv lookbehind: treffer hvis de foregående tegnene er abc, uten å konsumere dem.(?<=a)b → b
Negativ lookbehind: treffer hvis de foregående tegnene ikke er abc, uten å konsumere dem.(?<!a)b → b
Navngitt backreferanse: treffer nøyaktig den teksten som den navngitte gruppen fanget.(?<w>\w+) \k<w> → the the
Atomær gruppe (PCRE): treffer sekvensen én gang og backtracker aldri inn i den.(?>a+)ab on aab → no match
Grennullstilling (PCRE): alternasjon der hver gren gjenbruker de samme gruppenummerne.(?|(cat)|(dog)) → \1 = dog
Flagg
Globalt flagg: finn alle treffene i strengen, ikke bare det første./a/g on aaa → a, a, a
Flagg som ignorerer store og små bokstaver ved treff./Hi/i → hi
Multiline-flagg: behandle ^ og $ som starten og slutten av hver linje./^a/m matches at the start of each line
Dotall-flagg: la prikken også treffe linjeskift./a.b/s → a\nb
Unicode-flagg: behandle mønsteret og inndataene som unicode-kodepunkter./\u{1F600}/u → 😀
Sticky-flagg: treff bare på nøyaktig den posisjonen som lastIndex setter./ab/y matches only at lastIndex
Indeksflagg: legger start- og sluttposisjonen til hvert treff til i resultatet./b/d on abc → indices [1, 2]
Flagg for unicode-mengder: en strengere u som også tillater mengdeoperasjoner inni en klasse./[a-z&&[^aeiou]]/v → t
Utvidet flagg (PCRE): ignorer u-escapet mellomrom og #-kommentarer inni mønsteret./a b/x → ab