Lompat ke konten
SPCXTools

Regex Tester

Tulis regular expression dan lihat setiap kecocokan, capture group, serta hasil replace secara langsung.

Berjalan secara lokal — file tidak pernah meninggalkan perangkat Anda

Memuat alat…

Cara menggunakan Regex Tester

  1. 1Ketik regular expression Anda di kotak Pattern — tidak perlu garis miring (slash).
  2. 2Pilih flag seperti g (temukan semua kecocokan), i (abaikan huruf besar/kecil) atau m (multiline).
  3. 3Tempel teks yang akan dicari ke Test string. Hasil yang cocok akan langsung disorot dan dihitung.
  4. 4Cek tabel untuk melihat posisi setiap kecocokan dan capture group.
  5. 5Centang Replace dan masukkan teks pengganti seperti $2: $1 untuk melihat pratinjau hasil dari String.replace.

Uji regular expression dengan hasil real-time

Regular expression memang tangguh, tapi terkenal sulit dibaca. Regex tester ini menunjukkan secara langsung hasil dari pola (pattern) Anda saat diketik: setiap kecocokan (match) pada teks akan disorot, dihitung, dan ditampilkan beserta posisi dan capture group-nya. Pratinjau ganti (replace preview) menampilkan hasil cari-dan-ganti (search-and-replace) sebelum Anda menjalankannya pada kode. Semuanya berjalan secara lokal di browser Anda, di dalam background worker yang melindungi halaman dari pola yang tak terkendali.

Fitur

  • Sorotan real-time untuk semua kecocokan dalam string uji.
  • Toggle flag untuk g, i, m, s dan u, dengan tampilan literal /pattern/flags secara lengkap.
  • Tabel kecocokan dengan indeks, capture group bernomor, dan named group.
  • Pratinjau ganti yang mendukung $1, $<name>, $& dan pola penggantian lainnya.
  • Pesan error yang jelas untuk sintaks tidak valid, dan batas waktu aman satu detik untuk catastrophic backtracking.

Kegunaan praktis

Validasi input. Buat dan uji pola untuk kode pos, kode produk, atau username menggunakan daftar sampel valid dan tidak valid sebelum menambahkannya ke formulir.

Mengekstrak data. Tarik alamat email, URL, tanggal, atau ID dari log dan dokumen. Capture group memungkinkan Anda memecah setiap kecocokan menjadi beberapa bagian, seperti user dan domain.

Cari dan ganti. Format ulang tanggal dari MM/DD/YYYY menjadi YYYY-MM-DD, ubah nama variabel, atau bersihkan data yang diekspor. Lihat pratinjau penggantiannya di sini, lalu gunakan pola yang sama di editor atau skrip Anda.

Belajar regex. Lakukan eksperimen dengan quantifier, character class, dan anchor, lalu lihat hasilnya secara instan.

Referensi cepat

Sintaks Arti
. Karakter apa saja kecuali jeda baris (karakter apa saja dengan s)
\d \w \s Angka, karakter kata, spasi
[abc] [^abc] Salah satu / tak satu pun dari karakter yang terdaftar
* + ? 0 atau lebih, 1 atau lebih, 0 atau 1
{2,5} Antara 2 hingga 5 kali
^ $ Awal dan akhir teks (dari setiap baris dengan m)
(…) (?<name>…) Grup penangkap, grup bernama
(?:…) Grup tanpa menangkap
(?=…) (?!…) Lookahead, lookahead negatif
\b Batas kata

Quantifier secara bawaan bersifat greedy; tambahkan ? (seperti pada .*?) untuk membuatnya lazy. Untuk merapikan daftar setelahnya, coba Hapus Baris Duplikat, atau bandingkan sebelum dan sesudah dengan Diff Checker.

Pertanyaan yang sering diajukan

Varian regex apa yang digunakan alat uji ini?
Alat ini menggunakan engine regular expression JavaScript (ECMAScript) pada browser Anda — sama seperti yang digunakan oleh Node.js, Deno, dan kode front-end. Sebagian besar sintaksnya sama dengan PCRE, Python, dan Java, tetapi ada beberapa fitur yang berbeda, seperti possessive quantifier (tidak didukung) dan lookbehind (didukung di browser modern).
Mengapa regex saya hanya menemukan satu kecocokan?
Tanpa flag g (global), JavaScript berhenti pada kecocokan pertama. Aktifkan g untuk menemukan semua kecocokan dalam teks.
Bagaimana cara merujuk ke capture group pada teks pengganti?
Gunakan $1, $2, dan seterusnya untuk grup bernomor, $<name> untuk grup bernama seperti (?<year>\d{4}), $& untuk seluruh kecocokan, dan $$ untuk simbol dolar literal.
Apa yang terjadi jika regex saya sangat lambat?
Beberapa pola, seperti (a+)+$, dapat memakan waktu eksponensial pada input tertentu ("catastrophic backtracking"). Alat uji ini menjalankan ekspresi Anda di background worker dan menghentikannya setelah satu detik, sehingga halaman tidak akan hang. Tulis ulang pola untuk menghindari quantifier bersarang.
Apa fungsi flag s dan u?
s (dotAll) membuat . juga cocok dengan baris baru. u (unicode) memperlakukan pola dan teks sebagai code point Unicode, yang diperlukan untuk emoji dan escape properti \p{…} seperti \p{L} (huruf apa saja).
Apakah teks saya diunggah?
Tidak. Proses pencocokan dan penggantian berjalan secara lokal di browser Anda.