Real-Time Matching
Lihat kecocokan disorot secara instan saat Anda mengetik pola. Tidak ada tombol untuk diklik — hasil diperbarui setiap ketikan.
Uji dan debug ekspresi reguler Anda secara real-time. Alat gratis kami menyediakan penyorotan kecocokan langsung, informasi grup, dan contekan regex JavaScript yang praktis.
Pencocokan regex real-time dengan grup tangkapan, flag, dan cheatsheet — langsung di browser Anda. Tanpa unggah, tanpa daftar.
Ketik ekspresi reguler Anda di bidang input pola.
Pilih flag yang sesuai untuk pencarian Anda, seperti 'g' untuk pencarian global atau 'i' untuk tidak peka huruf besar/kecil.
Masukkan teks yang ingin Anda uji ekspresi Anda di area 'String Uji'.
Lihat kecocokan yang disorot secara real-time dan tinjau informasi kecocokan terperinci, termasuk grup tangkapan, di panel hasil.
Pencocokan real-time, info grup detail, dan cheatsheet bawaan.
Lihat kecocokan disorot secara instan saat Anda mengetik pola. Tidak ada tombol untuk diklik — hasil diperbarui setiap ketikan.
Setiap grup tangkapan ditampilkan bersama kecocokan penuh, menunjukkan teks tepat yang ditangkap oleh setiap grup dalam pola Anda.
Aktifkan flag g (global), i (case-insensitive), m (multiline), s (dotall), u (unicode), dan y (sticky) secara independen.
Lihat indeks, panjang, dan teks yang ditangkap untuk setiap kecocokan. Sempurna untuk debugging pola kompleks dengan banyak grup.
Semua pemrosesan regex terjadi secara lokal di browser Anda. Pola dan data uji Anda tidak pernah meninggalkan perangkat Anda.
Tanpa pendaftaran, tanpa API key, tanpa kuota harian. Gratis untuk penggunaan pribadi dan komersial, selamanya.
Regular expression (regex atau regexp) adalah urutan karakter yang menentukan pola pencarian. Konsep ini berasal dari teori otomata dan bahasa formal pada tahun 1950-an, dan sejak itu telah menjadi alat penting dalam pemrograman, pencarian teks, dan pemrosesan data. Regex didukung oleh hampir semua bahasa pemrograman modern, editor teks, dan alat baris perintah.
Pada intinya, pola regex mendeskripsikan teks apa yang akan dicocokkan menggunakan kombinasi karakter literal (yang mencocokkan dirinya sendiri) dan metakarakter (yang memiliki makna khusus). Misalnya, dalam pola \d{3}-\d{4}, \d adalah metakarakter yang mencocokkan digit apa pun, {3} adalah quantifier yang berarti "tepat 3 kali", dan - adalah karakter literal yang mencocokkan tanda hubung.
Quantifier (*, +, ?, {n,m}) mengontrol berapa kali elemen pola dapat berulang. Secara default, quantifier bersifat greedy (mencocokkan sebanyak mungkin), tetapi dapat dibuat lazy dengan menambahkan ? (mencocokkan sesedikit mungkin). Misalnya, a+ mencocokkan satu atau lebih "a" sebanyak mungkin, sedangkan a+? mencocokkan satu atau lebih "a" sesedikit mungkin.
Quantifier lazy (*?, +?, ??, {n,m}?) melakukan kebalikannya — mereka mencocokkan sesedikit mungkin karakter. Pola '<.*?>' diterapkan ke '' hanya mencocokkan ''. Quantifier lazy biasanya lebih disukai untuk tugas seperti mengekstrak tag HTML atau mencocokkan string dalam tanda kutip, di mana Anda ingin kecocokan sekecil mungkin.
Quantifier bersarang seperti (a+)+ atau (a*)* dapat menyebabkan backtracking bencana — mesin regex mencoba jumlah jalur pencocokan yang eksponensial, menyebabkan waktu pemrosesan yang sangat lama untuk input tertentu. Untuk menghindari ini, gunakan quantifier possessive (jika didukung) atau tulis ulang pola untuk menghilangkan ambiguitas. Alat kami mendeteksi ketika regex Anda membutuhkan waktu terlalu lama dan memperingatkan Anda.
Skenario dunia nyata di mana penguji regex menghemat waktu.
Uji pola untuk validasi email, telepon, URL, dan kode pos sebelum menerapkannya di aplikasi Anda.
Ekstrak bidang tertentu dari log server, log aplikasi, atau log akses menggunakan grup tangkapan.
Kembangkan dan uji pola find-and-replace berbasis regex untuk refactoring kode atau transformasi data.
Uji pola yang digunakan untuk sanitasi input dan aturan WAF terhadap berbagai payload serangan.
Perbandingan langsung alat pengujian regex populer.
| Fitur | NovaTools | Regex101 | RegExr | VS Code |
|---|---|---|---|---|
| Privasi (tanpa unggah) | 100% lokal | Unggah ke server | Unggah ke server | Lokal |
| Harga | Gratis tanpa batas | Gratis dengan iklan | Gratis dengan iklan | Free |
| Pencocokan real-time | ||||
| Grup tangkapan | ||||
| Cheatsheet | Bawaan | |||
| Semua flag JS | g,i,m,s,u,y | |||
| Ramah mobile | Terbatas | Terbatas | ||
| Berfungsi offline | Setelah halaman dimuat |
Regex101 dan RegExr adalah alat yang sangat baik tetapi mengunggah data uji Anda ke server mereka. Alat kami memproses semuanya secara lokal — pola dan string uji Anda tidak pernah meninggalkan browser Anda.
Lembar contekan untuk sintaks regular expression JavaScript (ECMAScript).
| Simbol / Kode | Deskripsi | Contoh |
|---|---|---|
. | Mencocokkan satu karakter apa pun kecuali baris baru (kecuali flag 's' disetel). | a.c → abc, axc |
\d | Mencocokkan digit apa pun (0-9). Setara dengan [0-9]. | \d+ → 123 |
\D | Mencocokkan karakter non-digit apa pun. | \D+ → abc |
\w | Mencocokkan karakter kata apa pun (huruf, digit, garis bawah). | \w+ → hello_123 |
\W | Mencocokkan karakter non-kata apa pun. | \W+ → !@# |
\s | Mencocokkan whitespace apa pun (spasi, tab, baris baru). | \s+ → ' \n' |
.Mencocokkan satu karakter apa pun kecuali baris baru (kecuali flag 's' disetel).
a.c → abc, axc\dMencocokkan digit apa pun (0-9). Setara dengan [0-9].
\d+ → 123\DMencocokkan karakter non-digit apa pun.
\D+ → abc\wMencocokkan karakter kata apa pun (huruf, digit, garis bawah).
\w+ → hello_123\WMencocokkan karakter non-kata apa pun.
\W+ → !@#\sMencocokkan whitespace apa pun (spasi, tab, baris baru).
\s+ → ' \n'| Simbol / Kode | Deskripsi | Contoh |
|---|---|---|
* | Mencocokkan 0 atau lebih kemunculan. | ab* → a, ab, abbb |
+ | Mencocokkan 1 atau lebih kemunculan. | ab+ → ab, abbb |
? | Mencocokkan 0 atau 1 kemunculan (opsional). | colou?r → color, colour |
{n} | Mencocokkan tepat n kemunculan. | \d{4} → 2026 |
{n,m} | Mencocokkan antara n dan m kemunculan. | \d{2,4} → 12, 123, 1234 |
*Mencocokkan 0 atau lebih kemunculan.
ab* → a, ab, abbb+Mencocokkan 1 atau lebih kemunculan.
ab+ → ab, abbb?Mencocokkan 0 atau 1 kemunculan (opsional).
colou?r → color, colour{n}Mencocokkan tepat n kemunculan.
\d{4} → 2026{n,m}Mencocokkan antara n dan m kemunculan.
\d{2,4} → 12, 123, 1234| Simbol / Kode | Deskripsi | Contoh |
|---|---|---|
^ | Mencocokkan awal string (atau baris dengan flag 'm'). | ^Hello → Hello at start |
$ | Mencocokkan akhir string (atau baris dengan flag 'm'). | world$ → world at end |
\b | Mencocokkan batas kata (antara karakter kata dan non-kata). | \bcat\b → cat (not category) |
(...) | Grup penangkap. Mengingat teks yang cocok. | (\d+)-(\d+) → 123-456 |
(?:...) | Grup non-penangkap. Mengelompokkan tanpa mengingat. | (?:ab)+ → abab |
(?=...) | Lookahead positif. Menegaskan pola mengikuti. | \d+(?=px) → 12 in '12px' |
^Mencocokkan awal string (atau baris dengan flag 'm').
^Hello → Hello at start$Mencocokkan akhir string (atau baris dengan flag 'm').
world$ → world at end\bMencocokkan batas kata (antara karakter kata dan non-kata).
\bcat\b → cat (not category)(...)Grup penangkap. Mengingat teks yang cocok.
(\d+)-(\d+) → 123-456(?:...)Grup non-penangkap. Mengelompokkan tanpa mengingat.
(?:ab)+ → abab(?=...)Lookahead positif. Menegaskan pola mengikuti.
\d+(?=px) → 12 in '12px'Alat ini berjalan sepenuhnya di browser Anda. File Anda tidak diunggah ke server, tidak disimpan, dan tidak dianalisis.
Bahkan jika koneksi internet Anda terputus, file Anda tetap aman.
Pelajari apa itu Base64, kapan memakai Base64 standar atau URL-safe, dan cara encode/decode teks secara lokal di browser.
Temukan alat pengembang gratis terbaik yang meningkatkan produktivitas tanpa menghabiskan banyak uang. Dari pemformat kode hingga penguji API, alat-alat ini akan menyederhanakan alur kerja Anda.
Pelajari cara mengubah huruf besar/kecil teks: camelCase, snake_case, kebab-case, Title Case, CONSTANT_CASE, dan 12 gaya lainnya. Konvensi pemrograman dijelaskan. 100% sisi klien.