Contekan ekspresi reguler
Ekspresi reguler (regex) adalah pola untuk mencocokkan teks — dipakai untuk cari-ganti, validasi, dan ekstraksi. Sintaks di bawah adalah varian umum yang dipakai bersama oleh JavaScript, Python, PCRE, dan sebagian besar mesin modern. Cari token mana pun untuk melompat ke sana.
Diperbarui 2026-07-06
Kelas karakter
| Token | Mencocokkan | Contoh |
|---|---|---|
| . | Karakter apa pun kecuali baris baru | a.c → abc, a7c |
| \d | Angka apa pun (0–9) | \d\d → 42 |
| \D | Bukan angka apa pun | \D → a, % |
| \w | Karakter kata (huruf, angka, garis bawah) | \w+ → hello_1 |
| \W | Karakter bukan kata | \W → space, ! |
| \s | Spasi kosong (spasi, tab, baris baru) | a\sb → a b |
| \S | Bukan spasi kosong | \S+ → word |
| [abc] | Salah satu dari a, b, atau c | [aeiou] → a vowel |
| [^abc] | Karakter apa pun kecuali a, b, c | [^0-9] → non-digit |
| [a-z] | Karakter apa pun dalam rentang | [a-f] → a…f |
Jangkar & batas
| Token | Mencocokkan | Contoh |
|---|---|---|
| ^ | Awal string (atau baris, dalam mode multibaris) | ^Hi → line starting Hi |
| $ | Akhir string (atau baris) | end$ → line ending end |
| \b | Batas kata | \bcat\b → the word cat |
| \B | Bukan batas kata | \Bcat → scatter |
Kuantifier
| Token | Mencocokkan | Contoh |
|---|---|---|
| * | 0 atau lebih dari sebelumnya | a* → '', a, aaa |
| + | 1 atau lebih | a+ → a, aaa (not '') |
| ? | 0 atau 1 (opsional) | colou?r → color, colour |
| {n} | Tepat n kali | \d{4} → 2026 |
| {n,} | n kali atau lebih | \d{2,} → 42, 4200 |
| {n,m} | Antara n dan m kali | \d{2,4} → 42 to 4200 |
| *? | Malas: sesedikit mungkin | <.+?> → shortest match |
Grup, alternasi & lookaround
| Token | Mencocokkan | Contoh |
|---|---|---|
| (abc) | Grup penangkap | (ab)+ → abab |
| (?:abc) | Grup non-penangkap | (?:ab)+ → group, no capture |
| (?<name>…) | Grup penangkap bernama | (?<year>\d{4}) |
| a|b | Alternasi — a atau b | cat|dog → cat, dog |
| \1 | Referensi balik ke grup 1 | (\w)\1 → ll, oo |
| (?=abc) | Lookahead — diikuti abc | \d(?=px) → 5 in 5px |
| (?!abc) | Lookahead negatif — tidak diikuti | \d(?!px) |
| (?<=abc) | Lookbehind — didahului abc | (?<=\$)\d+ → 9 in $9 |
| (?<!abc) | Lookbehind negatif | (?<!\$)\d+ |
Flag
| Token | Mencocokkan | Contoh |
|---|---|---|
| g | Global — temukan semua kecocokan, bukan hanya yang pertama | /a/g |
| i | Tanpa peka huruf besar/kecil | /abc/i → ABC |
| m | Multibaris — ^ dan $ cocok dengan baris baru | /^x/m |
| s | Dotall — . juga cocok dengan baris baru | /a.b/s |
| u | Mode Unicode | /\u{1F600}/u |
Catatan tentang escape
Untuk mencocokkan karakter yang punya arti khusus — seperti . * + ? ( ) [ ] { } ^ $ | \ — beri garis miring terbalik di depannya. Misalnya, \. cocok dengan titik harfiah dan \$ cocok dengan tanda dolar harfiah. Ketika pola tidak cocok dengan yang Anda harapkan, karakter khusus yang tidak di-escape biasanya penyebabnya.
Alat terkait