Cara menggunakan Regex Tester
- Ketik polamu di antara garis miring, atau pilih dari Pola umum. Kamu juga bisa menempel literal lengkap seperti
/\d+/g. - Aktifkan flag seperti
g(semua kecocokan),i(abaikan kapital), ataum(multiline). - Tempel teksmu di Teks uji — setiap kecocokan langsung di-highlight saat kamu mengetik.
- Cek tab Matches untuk posisi dan grup capture, atau buka Replace untuk melihat pratinjau penggantian.
- Klik Salin untuk menyalin regex sebagai
/pattern/flags; pola dan flag juga disimpan di URL halaman agar mudah dibagikan.
Apa itu regex tester?
Regular expression (regex) adalah bahasa pola yang ringkas untuk mencari dan mengubah teks — misalnya memvalidasi kolom email, mengambil ID dari log, mengganti nama file, atau membersihkan data. Karena satu karakter saja bisa mengubah hasil pola, menulis regex dengan coba-coba di dalam kode itu lambat. Regex tester menunjukkan secara instan apa yang cocok dengan pola, grup capture mana yang terisi, dan hasil yang dihasilkan sebuah penggantian.
Tester ini memakai mesin regex JavaScript (ECMAScript) bawaan browsermu, jadi hasilnya sama persis dengan yang diberikan String.prototype.match, matchAll, replace, dan RegExp.test di Chrome, Firefox, Safari, Node.js, dan Deno. Pola dijalankan di background worker dengan batas waktu, sehingga pola yang berjalan tanpa henti tidak akan membuat halaman macet.
Flag regex JavaScript
| Flag | Nama | Efek |
|---|---|---|
g | global | Cari setiap kecocokan, tidak berhenti di yang pertama. |
i | ignoreCase | /abc/i cocok dengan “ABC”. |
m | multiline | ^ dan $ cocok di awal dan akhir setiap baris. |
s | dotAll | . juga cocok dengan pergantian baris. |
u | unicode | Memperlakukan surrogate pair (emoji) sebagai satu karakter dan mengaktifkan escape properti \p{…}. |
y | sticky | Hanya cocok di lastIndex — berguna saat membuat tokenizer. |
Grup capture, grup bernama, dan penggantian
Tanda kurung menangkap teks yang cocok. Pada (\d{4})-(\d{2}), grup 1 adalah tahun dan grup 2 adalah bulan. Grup bernama membuat pola lebih mudah dibaca: (?<year>\d{4}) tersedia sebagai match.groups.year di kode dan sebagai $<year> di string penggantian. Misalnya, mengganti (?<y>\d{4})-(?<m>\d{2})-(?<d>\d{2}) dengan $<d>/$<m>/$<y> mengubah 2026-10-25 menjadi 25/10/2026. Gunakan (?:…) jika kamu butuh pengelompokan tanpa menangkap teks.
Catastrophic backtracking
Pola dengan quantifier bersarang seperti (a+)+$ atau (\w+\s?)*$ bisa memakan waktu eksponensial pada input yang hampir cocok — penyebab klasik browser macet dan kerentanan ReDoS di server. Jika pola berjalan lebih dari 1,5 detik di sini, prosesnya dihentikan dan diberi tanda. Perbaiki dengan membuat alternatif saling eksklusif, mengganti .* dengan kelas negasi seperti [^"]*, atau memberi anchor pada pola.
Tips untuk pola yang andal
- Beri anchor pada pola validasi dengan
^…$, jika tidak\d{5}juga akan “memvalidasi”abc123456. - Escape metakarakter yang ingin dicari secara literal:
\.\?\(\[\$. - Pilih kelas karakter yang spesifik daripada
.*; hasilnya lebih cepat dan sesuai maksudmu. - Regex kurang cocok untuk format bersarang seperti HTML atau JSON — gunakan parser (atau JSON Formatter kami).
- Ingin membandingkan teks sebelum dan sesudah replace-all? Tempel keduanya di Diff Checker.
Pola regex yang sering dipakai
Ekspresi reguler yang sudah diuji, lengkap dengan penjelasan dan kode untuk JavaScript, Python, dan PHP:
- Alamat email
- URL (http dan https)
- Alamat IPv4
- Nomor telepon AS
- Nomor telepon internasional (E.164)
- Kode ZIP AS
- Kode pos UK
- Kode pos Kanada
- Tanggal (YYYY-MM-DD)
- Tanggal (MM/DD/YYYY)
- Tanggal (DD/MM/YYYY)
- Waktu (24 jam HH:MM)
- Waktu 12 Jam (AM/PM)
- Kode warna hex
- Password kuat
- Nama pengguna
- Slug URL
- UUID
- Nomor kartu kredit
- Nomor Jaminan Sosial AS
- Nama domain
- Alamat MAC
- Versi semantik (semver)
- Regex ISO 8601 tanggal dan waktu
- JSON Web Token (JWT)
- Regex base64 string
- Nama file gambar
- ID video YouTube dari URL
- Cari semua alamat email dalam teks
- Cari Semua URL dalam Teks
- Cari hashtag
- Cari @mention
- Cocokkan Tag HTML
- Temukan angka dalam teks
- Angka saja
- Angka desimal
- Regex huruf saja
- Alfanumerik
- Hapus spasi awal dan akhir
- Regex Hapus Spasi Ganda
- Cari kata duplikat
- Hapus tag HTML
Pertanyaan yang sering diajukan
Flavor regex apa yang dipakai tester ini?
\A/\Z, atau modifier inline seperti (?i).Kenapa polaku hanya menemukan satu kecocokan?
g (global), JavaScript berhenti di kecocokan pertama. Aktifkan g untuk menemukan semuanya — tester ini juga akan mengingatkan jika flag tersebut mati.Bagaimana cara mencocokkan lintas beberapa baris?
m agar ^ dan $ bekerja per baris, dan flag s (atau [\s\S]) jika . juga harus cocok dengan karakter baris baru.Apakah teks ujiku disimpan atau diunggah?
Apa regex yang baik untuk memvalidasi alamat email?
^[^\s@]+@[^\s@]+\.[^\s@]+$ (atau preset “Alamat email”). Pola yang sepenuhnya sesuai RFC 5322 sangat panjang dan tetap tidak bisa memastikan apakah kotak surat itu ada — untuk itu kirim email konfirmasi.