Poin penting
- 01Penguji menggunakan mesin RegExp JavaScript asli browser Anda, sehingga hasil cocok persis dengan apa yang akan diproduksi Node.js atau browser modern dalam produksi.
- 02Semua enam bendera JavaScript (g, i, m, s, y, u) tersedia secara individual.
- 03Template penggantian mendukung $1, $2, $&, dan $$ untuk pratinjau substitusi yang kuat.
- 04Tidak ada yang dikirim ke server — pola dan string pengujian tetap sepenuhnya di browser Anda.
Mengapa Penguji Regex Berdedikasi Mengalahkan IDE Anda
Ekspresi reguler sangat kuat tetapi terkenal sulit dibaca sekilas. Bahkan pengembang berpengalaman mengalami kejutan: titik yang menelan newline, kuantifier rakus yang mengonsumsi terlalu banyak, atau grup tangkap yang satu kali mati. Penguji khusus menghilangkan kode sekitarnya sehingga Anda dapat mengulangi hanya pola dan string masukan sekaligus.
Penguji regex Handytool mengevaluasi pola dengan mesin RegExp ECMAScript asli browser, yang berarti tidak ada lapisan terjemahan dan tidak ada ketidaksesuaian rasa. Jika penguji mengatakan itu cocok, kode JavaScript Anda juga akan cocok. Beralih bendera, tempel string sampel segar, dan hasil diperbarui secara instan — tidak ada tombol jalankan yang diperlukan.
Cara Menguji Pola Regex
Seluruh alur kerja membutuhkan waktu kurang dari satu menit.
- 01
Tempel atau ketik pola Anda
Masukkan ekspresi reguler Anda di bidang pola. Hilangkan garis miring sekitarnya — bendera diatur secara terpisah.
- 02
Atur bendera Anda
Alihkan g, i, m, s, y, dan u secara individual. Bendera global hampir selalu diperlukan untuk kasus penggunaan kecocokan multi-pertandingan.
- 03
Tempel string pengujian Anda
Tambahkan teks yang ingin Anda cocokkan. Setiap keystroke menjalankan kembali pola dan menyoroti kecocokan dalam masukan.
- 04
Periksa grup tangkap
Gulir daftar kecocokan untuk melihat posisi setiap kecocokan dan nilai setiap grup tangkap bernomor.
- 05
Pratinjau penggantian
Masukkan template penggantian menggunakan $1, $2, atau $& untuk melihat output yang diganti secara langsung — bagus untuk memvalidasi panggilan String.replace() sebelum Anda menulisnya.
Daftar Periksa Debug Regex Cepat
Sebelum menganggap ada bug, jalankan melalui ini:
- 01Apakah bendera global diaktifkan jika Anda mengharapkan lebih dari satu kecocokan?
- 02Haruskah titik cocok dengan baris baru? Aktifkan bendera s jika demikian.
- 03Apakah Anda menggunakan grup bernomor ($1, $2) atau grup bernama (\k<name>) dalam penggantian?
- 04Apakah pola menggunakan karakter Unicode escape (\p{…})? Memerlukan bendera u.
- 05Apakah bendera lengket (y) memerlukan lastIndex segar untuk setiap kecocokan?
Pribadi Menurut Desain
Penguji regex membuat permintaan jaringan nol saat Anda mengetik. Pola dan string pengujian Anda diproses sepenuhnya oleh mesin JavaScript browser — mereka tidak pernah menyentuh server. Itu membuatnya aman untuk menempel baris log proprietary, muatan API internal, atau string sensitif saat debugging.
Karena tidak ada backend yang terlibat, juga tidak ada batas laju, tidak ada akun yang diperlukan, dan tidak ada pembatasan ukuran tempel di luar apa yang tab browser Anda dapat tangani. Sebagian besar pola sehari-hari dan string dievaluasi dalam waktu kurang dari satu milidetik.
FAQ Penguji Regex
Rasa regex apa yang digunakan penguji ini?
JavaScript (ECMAScript). Pola dievaluasi oleh mesin RegExp asli browser, cocok dengan Node.js dan perilaku browser modern dengan tepat. Lookbehinds, grup bernama, dan karakter Unicode escape (\p{…} dengan bendera u) semuanya didukung.
Apakah pola atau string pengujian saya meninggalkan halaman?
Tidak. Semuanya berjalan secara lokal di browser Anda — tidak ada permintaan jaringan yang dibuat saat Anda mengetik pola, mengubah bendera, atau melihat pratinjau penggantian.
Bagaimana cara menggunakan grup tangkap di bidang penggantian?
Gunakan $1, $2, … untuk grup bernomor, $& untuk seluruh kecocokan, dan $$ untuk memasukkan tanda dollar literal. Pratinjau diperbarui secara langsung saat Anda mengubah pola atau template.
Apakah ini berfungsi untuk pola Python atau PCRE?
Mesinnya adalah JavaScript, jadi sebagian besar pola dasar berperilaku identik, tetapi grup bernama gaya Python (?P<name>…) dan kuantifikator pemilik tidak didukung. Gunakan setara JS — (?<name>…) untuk grup bernama.
Mengapa regex saya tidak cocok di seluruh hentian baris?
Aktifkan bendera s (dot-all), atau ganti . dengan [\s\S]. Tanpanya, titik cocok dengan karakter apa pun kecuali baris baru.