Skip to content

Regex tokenek elmagyarázva

Minden alap regex token: horgonyok, karakterosztályok, kvantifikátorok, csoportok és jelzők. Mit jelent mindegyik, egy konkrét találattal. A Regex Tester eszköz gyors referenciája.

A regex tokenek egymásra épülnek: fűzz össze egy horgonyt, egy karakterosztályt és egy kvantifikátort egy minta felépítéséhez. A ^ az elejére rögzít, a \d számjegyet keres, a {2,4} pedig a darabszámot adja meg. Együtt, mint ^\d{2,4}$, a teljes szöveg két–négy számjegyére illeszkedik. A mintát olvasd balról jobbra, egyszerre egy tokent. A társ Regex Tester eszközzel ezek a tokenek a saját szövegeden élőben kipróbálhatók.

Referenciatáblázat · 55 bejegyzésOpen the regex-tester tool →
55 of 55 rows
Horgonyok
Illeszkedik a szöveg kezdetének pozíciójára, vagy az m jelzővel a sor kezdetére.^He → He
Illeszkedik a szöveg végének pozíciójára, vagy az m jelzővel a sor végére.lo$ → lo
Szóhatárnak felel meg: a pozíciónak egy szó- és egy nem szókarakter között.\bcat\b → cat
Nem szóhatárnak felel meg: a pozíciónak két szókarakter vagy két nem szókarakter között.\Bar → ar
Karakterosztályok
Bármilyen egyetlen karakterre illeszkedik, kivéve a sortörést — hacsak nincs bekapcsolva az s jelző.a.c → abc
Bármilyen számjegyre illeszkedik, 0-tól 9-ig.\d → 7
Bármilyen karakterre illeszkedik, amely nem számjegy.\D → a
Bármilyen szókarakterre illeszkedik: betű, számjegy vagy aláhúzás.\w → _
Bármilyen karakterre illeszkedik, amely nem szókarakter.\W → !
Bármilyen üres karakterre illeszkedik: szóköz, tabulátor vagy sortörés.a\sb → a b
Bármilyen karakterre illeszkedik, amely nem üres karakter.\S → a
A szögletes zárójelben felsorolt karakterek bármelyikére illeszkedik.[aeiou] → e
Bármilyen karakterre illeszkedik, amely nincs felsorolva a zárójelben.[^aeiou] → s
A megadott tartomány bármely egyetlen karakterére illeszkedik, a-tól z-ig.[a-z] → m
Bármilyen egyetlen karakterre illeszkedik, sortörést is beleértve — a sorokon átnyúló pont gyakori idiómája.[\s\S] → \n
Bármilyen unicode betűre illeszkedik bármely írásrendszerből, az u jelzővel.\p{L} → é
Bármilyen unicode szám karakterre illeszkedik bármely írásrendszerből, az u jelzővel.\p{N} → ٣
Escape: egyetlen soremelés (line feed) karakterre illeszkedik.\n → line feed
Escape: egyetlen tabulátor karakterre illeszkedik.\t → tab
Escape: egyetlen kocsi vissza (carriage return) karakterre illeszkedik.\r → carriage return
A megadott kétszámjegyű hexadecimális kódú egyetlen karakterre illeszkedik.\x41 → A
A megadott hexadecimális kódpontú egyetlen karakterre illeszkedik, az u jelzővel.\u{1F600} → 😀
Osztály-metszet, a v jelzővel: olyan karakterekre illeszkedik, amelyek egyszerre mindkét halmazban benne vannak.[[a-z]&&[^aeiou]] → t
Kvantifikátorok
Az előző token nulla vagy több előfordulására illeszkedik.ab* → abbb
Az előző token egy vagy több előfordulására illeszkedik.a+ → aaa
Az előző token nulla vagy egy előfordulására illeszkedik, opcionálissá teszi.colou?r → color
Az előző token pontosan n-szer fordul elő.a{3} → aaa
Az előző token n vagy több alkalommal fordul elő.a{2,} → aaaa
Az előző token n és m közötti alkalomszámra illeszkedik, a határokat beleértve.a{2,4} → aaa
Lusta kvantifikátor: az előző token nulla vagy több előfordulásából a lehető legkevesebbet veszi.<.*?> on <a><b> → <a>
Lusta kvantifikátor: az előző token egy vagy több előfordulásából a lehető legkevesebbet veszi.\d+? on 123 → 1
Lusta kvantifikátor: az előző token nulla vagy egy előfordulását keresi, a nullát preferálja.ab?? on ab → a
Lusta kvantifikátor: az előző token n és m közötti előfordulásából a lehető legkevesebbet veszi.a{1,3}? on aaa → a
Birtokló (possessive) kvantifikátor (PCRE): az előző token nulla vagy több előfordulását megtartja, és soha nem próbálkozik más felosztással, nem lép vissza..*+a on aaa → no match
Csoportok és alternáció
Rögzítő csoport: a sorozatra illeszkedik, és megjegyzi visszahivatkozásokhoz.(ab)+ → abab
Nem rögzítő csoport: a sorozatra illeszkedik, megjegyzés nélkül.(?:ab)+ → abab
Pozitív előretekintés: akkor illeszkedik, ha a következő karakterek abc, anélkül hogy elfogyasztaná őket.a(?=b) → a
Negatív előretekintés: akkor illeszkedik, ha a következő karakterek nem abc, anélkül hogy elfogyasztaná őket.a(?!b) → a
Visszahivatkozás: az 1-es rögzítő csoport által talált pontos szövegre illeszkedik.(a)\1 → aa
Alternáció: a vonal előtti vagy utáni kifejezésre illeszkedik.cat|dog → dog
Névvel ellátott rögzítő csoport: a sorozatra illeszkedik, és a megadott néven jegyzi meg.(?<year>\d{4}) → year = 2026
Pozitív hátratekintés: akkor illeszkedik, ha a megelőző karakterek abc, anélkül hogy elfogyasztaná őket.(?<=a)b → b
Negatív hátratekintés: akkor illeszkedik, ha a megelőző karakterek nem abc, anélkül hogy elfogyasztaná őket.(?<!a)b → b
Nevesített visszahivatkozás: a nevesített csoport által talált pontos szövegre illeszkedik.(?<w>\w+) \k<w> → the the
Atomcsoport (PCRE): a sorozatra egyszer illeszkedik, és soha nem lép vissza bele.(?>a+)ab on aab → no match
Ág-visszaállítás (branch reset, PCRE): olyan alternáció, ahol minden ág ugyanazokat a csoportszámokat használja újra.(?|(cat)|(dog)) → \1 = dog
Jelzők
Globális jelző: a szövegben minden találatot megkeres, nem csak az elsőt./a/g on aaa → a, a, a
Kis- és nagybetű-érzéketlen jelző: illesztéskor figyelmen kívül hagyja a betűméretet./Hi/i → hi
Többsoros jelző: a ^ és $ minden sor kezdeteként és végeként értelmeződik./^a/m matches at the start of each line
Dotall jelző: a pont sortörésre is illeszkedjen./a.b/s → a\nb
Unicode jelző: a mintát és a bemenetet unicode kódpontokként kezeli./\u{1F600}/u → 😀
Ragadós (sticky) jelző: csak a lastIndex által beállított pontos pozícióban illeszkedik./ab/y matches only at lastIndex
Index jelző: minden találat kezdő- és zárópozícióját hozzáadja az eredményhez./b/d on abc → indices [1, 2]
Unicode halmazok jelzője: szigorúbb u, amely halmazműveleteket is megenged egy osztályon belül./[a-z&&[^aeiou]]/v → t
Kiterjesztett jelző (PCRE): a mintában a nem escape-elt üres karaktereket és # megjegyzéseket figyelmen kívül hagyja./a b/x → ab