QuickATools

Alat pengembang · Free browser tool

Penguji Regex

Uji dan debug ekspresi reguler Anda secara real-time dengan penyorotan sintaks live, group capture, dan toggle flag.

Regular expression

Pattern between slashes · flags toggle on the right.

g
g Global — find all matchesi Ignore casem Multiline — ^/$ per line
Valid pattern/\b(\w+)@(\w+)\.(\w+)\b/g3 matches

Test string

Paste the text you want to match against.

107 characters

Highlighted matches

Matching regions are marked in amber below.

Contact us at hello@example.com or support@quickatools.com. Also try BAD@EMAIL (no TLD) and alice@site.org.

Match details

3 results
#MatchIndex$1$2$3
1hello@example.com1431helloexamplecom
2support@quickatools.com3558supportquickatoolscom
3alice@site.org92106alicesiteorg

Frequently Asked Questions

Apa yang benar-benar dilakukan flag g, i, dan m?

Flag g (global) menemukan setiap match di string alih-alih berhenti setelah yang pertama. Flag i (ignore case) membuat pola case-insensitive, jadi /hello/i cocok dengan "Hello" dan "HELLO". Flag m (multiline) mengubah bagaimana ^ dan $ berperilaku — dengan m aktif, mereka cocok dengan awal dan akhir setiap baris alih-alih hanya awal dan akhir seluruh string. Toggle mereka secara live di alat ini untuk melihat perbedaannya segera.

Apa perbedaan antara match dan capture group?

Match adalah substring penuh yang memenuhi pola Anda. Capture group adalah bagian dari match itu yang sengaja Anda "simpan" dengan membungkus bagian pola dalam parentheses — misalnya, /(\d{4})-(\d{2})-(\d{2})/ yang cocok dengan "2026-08-07" menghasilkan satu match ("2026-08-07") dan tiga capture group ($1 = "2026", $2 = "08", $3 = "07"). Capture group adalah yang Anda pakai dalam replacement atau saat mengekstrak field terstruktur dari teks.

Bagaimana engine RegExp JavaScript berbeda dari flavor regex lain?

JavaScript memakai flavor berbasis ECMAScript, yang mendukung lookaround, named group, dan Unicode property escape (dengan flag u), tetapi tidak mendukung beberapa fitur yang ditemukan di PCRE atau .NET seperti pola rekursif atau possessive quantifier. Pola yang Anda uji di sini berperilaku persis seperti yang akan terjadi di kode browser atau Node.js — jadi jika pola bekerja di alat ini, ia akan bekerja dengan cara yang sama di aplikasi JavaScript Anda.

Apakah aman menguji regex terhadap kode sumber nyata atau data sensitif di sini?

Ya. Kompilasi pola, matching, highlighting, dan pembuatan laporan semuanya berjalan lokal memakai engine RegExp bawaan browser — tidak ada yang Anda tempel diunggah, di-log, atau dikirim ke server. Itu membuatnya aman untuk debug pola validasi form signup, aturan parsing log, atau regex redaksi terhadap teks sampel nyata (bahkan sensitif) tanpa mengekspos teks itu ke layanan pihak ketiga.

Mengapa Feedback Regex Live Mengalahkan Debugging Guess-and-Reload

Ekspresi reguler padat by design — escape yang hilang, quantifier yang greedy, atau flag yang salah bisa diam-diam mencocokkan hal yang salah (atau tidak sama sekali). Mendebug mereka dengan menempel ke kode production dan me-reload lambat dan berisiko. Tester live yang menyoroti setiap match dan menunjukkan setiap capture group saat Anda mengetik meruntuhkan loop feedback itu ke milidetik, agar Anda melihat tepat apa yang dilakukan ^, $, atau group bersarang sebelum pola pernah dikirim.

Feedback itu juga penting untuk aturan yang sensitif keamanan. Validator form signup, pola redaksi log, dan filter konten sering diuji terhadap data sampel nyata — email, nomor telepon, atau fragmen input pengguna. Mengirim teks itu ke playground regex pihak ketiga berarti mempercayai server mereka dengan konten yang mungkin tidak ingin Anda biarkan meninggalkan mesin. Alat ini tidak pernah mengunggah apa pun: kompilasi pola, matching, highlighting, dan laporan match semuanya berjalan melalui engine RegExp bawaan browser.

Karena engine-nya adalah implementasi ECMAScript yang sama yang dipakai browser dan Node.js Anda, pola yang bekerja di sini akan berperilaku sama di aplikasi JavaScript Anda — termasuk bagaimana flag seperti g, i, dan m mengubah matching, dan bagaimana capture group dinomori. Pakai panel highlight amber untuk melihat match yang tidak disengaja, dan tabel match untuk memverifikasi bahwa $1, $2, dan teman-teman mengekstrak field yang Anda harapkan.

Perlu merapikan sampel JSON sebelum menguji aturan parse? Pakai Formatter & Validator JSON . Mendecode token ter-encode terlebih dahulu? Coba Encode/Decode Base64 . Membuat fixture ID untuk test suite? Generator UUID/GUID berjalan sama lokalnya dengan alat ini.