Skip to content

Token Regex diterangkan

Setiap token regex teras: sauh, kelas aksara, pengkuantiti, kumpulan dan bendera. Maksud setiap satu, dengan satu padanan konkrit. Rujukan pantas pendamping kepada alat Regex Tester.

Token regex boleh digabungkan: susun satu sauh, satu kelas aksara dan satu pengkuantiti untuk membina corak. ^ memacak pada permulaan, \d memadan digit, dan {2,4} menetapkan berapa kali. Gabungkannya sebagai ^\d{2,4}$ untuk memadan keseluruhan rentetan dua hingga empat digit. Baca corak dari kiri ke kanan, satu token pada satu masa. Alat pendamping Regex Tester membolehkan anda mencuba token ini secara langsung pada teks anda sendiri.

Jadual rujukan · 55 entriOpen the regex-tester tool →
55 of 55 rows
Sauh
Memadan kedudukan pada permulaan rentetan, atau permulaan baris dengan bendera m.^He → He
Memadan kedudukan pada hujung rentetan, atau hujung baris dengan bendera m.lo$ → lo
Memadan sempadan kata: kedudukan antara aksara kata dan aksara bukan kata.\bcat\b → cat
Memadan bukan sempadan kata: kedudukan antara dua aksara kata atau dua aksara bukan kata.\Bar → ar
Kelas aksara
Memadan mana-mana satu aksara kecuali pemisah baris, melainkan bendera s disetkan.a.c → abc
Memadan mana-mana digit, 0 hingga 9.\d → 7
Memadan mana-mana aksara yang bukan digit.\D → a
Memadan mana-mana aksara kata: huruf, digit atau garis bawah.\w → _
Memadan mana-mana aksara yang bukan aksara kata.\W → !
Memadan mana-mana aksara ruang putih: ruang, tab atau pemisah baris.a\sb → a b
Memadan mana-mana aksara yang bukan ruang putih.\S → a
Memadan mana-mana satu daripada aksara yang tersenarai dalam kurungan siku.[aeiou] → e
Memadan mana-mana aksara yang bukan satu daripada yang tersenarai dalam kurungan siku.[^aeiou] → s
Memadan mana-mana satu aksara dalam julat yang diberikan, dari a hingga z.[a-z] → m
Memadan mana-mana satu aksara termasuk pemisah baris — idiom lazim bagi titik yang merentas baris.[\s\S] → \n
Memadan mana-mana huruf unicode dari mana-mana skrip, apabila bendera u disetkan.\p{L} → é
Memadan mana-mana aksara nombor unicode dari mana-mana skrip, apabila bendera u disetkan.\p{N} → ٣
Pelepasan (escape): memadan satu aksara suap baris (line feed).\n → line feed
Pelepasan (escape): memadan satu aksara tab.\t → tab
Pelepasan (escape): memadan satu aksara carriage return.\r → carriage return
Memadan satu aksara dengan kod heksadesimal dua digit yang diberikan.\x41 → A
Memadan satu aksara dengan titik kod heksadesimal yang diberikan, apabila bendera u disetkan.\u{1F600} → 😀
Persilangan kelas, dengan bendera v: memadan aksara yang ada dalam kedua-dua set sekaligus.[[a-z]&&[^aeiou]] → t
Pengkuantiti
Memadan token sebelumnya sifar kali atau lebih.ab* → abbb
Memadan token sebelumnya sekali atau lebih.a+ → aaa
Memadan token sebelumnya sifar atau satu kali, menjadikannya pilihan.colou?r → color
Memadan token sebelumnya tepat n kali.a{3} → aaa
Memadan token sebelumnya n kali atau lebih.a{2,} → aaaa
Memadan token sebelumnya antara n hingga m kali, kedua-dua had termasuk.a{2,4} → aaa
Pengkuantiti malas: memadan token sebelumnya sifar kali atau lebih, mengambil sesedikit mungkin.<.*?> on <a><b> → <a>
Pengkuantiti malas: memadan token sebelumnya sekali atau lebih, mengambil sesedikit mungkin.\d+? on 123 → 1
Pengkuantiti malas: memadan token sebelumnya sifar atau satu kali, memilih sifar.ab?? on ab → a
Pengkuantiti malas: memadan token sebelumnya antara n hingga m kali, mengambil sesedikit mungkin.a{1,3}? on aaa → a
Pengkuantiti possessive (PCRE): memadan token sebelumnya sifar kali atau lebih dan menahannya, tanpa pernah undur untuk mencuba pecahan lain..*+a on aaa → no match
Kumpulan dan alternasi
Kumpulan menangkap: memadan jujukan dan mengingatnya untuk rujukan balik.(ab)+ → abab
Kumpulan tak menangkap: memadan jujukan tanpa mengingatnya.(?:ab)+ → abab
Lookahead positif: padan jika aksara berikutnya ialah abc, tanpa memakannya.a(?=b) → a
Lookahead negatif: padan jika aksara berikutnya bukan abc, tanpa memakannya.a(?!b) → a
Rujukan balik: memadan teks tepat yang ditangkap oleh kumpulan menangkap 1.(a)\1 → aa
Alternasi: memadan sama ada ungkapan sebelum atau selepas palang menegak.cat|dog → dog
Kumpulan menangkap bernama: memadan jujukan dan mengingatnya di bawah nama yang diberikan.(?<year>\d{4}) → year = 2026
Lookbehind positif: padan jika aksara sebelumnya ialah abc, tanpa memakannya.(?<=a)b → b
Lookbehind negatif: padan jika aksara sebelumnya bukan abc, tanpa memakannya.(?<!a)b → b
Rujukan balik bernama: memadan teks tepat yang ditangkap oleh kumpulan bernama.(?<w>\w+) \k<w> → the the
Kumpulan atomik (PCRE): memadan jujukan sekali dan tidak pernah undur ke dalamnya.(?>a+)ab on aab → no match
Branch reset (PCRE): alternasi di mana setiap cabang menggunakan semula nombor kumpulan yang sama.(?|(cat)|(dog)) → \1 = dog
Bendera
Bendera global: cari setiap padanan dalam rentetan, bukan yang pertama sahaja./a/g on aaa → a, a, a
Bendera tak peka huruf besar/kecil: abaikan kes huruf ketika memadan./Hi/i → hi
Bendera berbilang baris: layak ^ dan $ sebagai permulaan dan hujung setiap baris./^a/m matches at the start of each line
Bendera dotall: biarkan titik memadan pemisah baris juga./a.b/s → a\nb
Bendera unicode: layak corak dan inputnya sebagai titik kod unicode./\u{1F600}/u → 😀
Bendera melekat (sticky): padan hanya pada kedudukan tepat yang ditetapkan oleh lastIndex./ab/y matches only at lastIndex
Bendera indeks: menambah kedudukan mula dan hujung setiap padanan ke hasil./b/d on abc → indices [1, 2]
Bendera set unicode: u yang lebih ketat yang turut membenarkan operasi set dalam kelas./[a-z&&[^aeiou]]/v → t
Bendera lanjutan (PCRE): abaikan ruang putih tanpa pelepasan dan komen # dalam corak./a b/x → ab