Kembali ke beranda Pengembang Penguji Regex

Penguji Regex

Uji ekspresi reguler

Cara menggunakan Penguji Regex

Uji ekspresi reguler Alat online gratis, tanpa pendaftaran, tanpa iklan mengganggu. Gunakan sekarang.

Di mana ekspresi reguler digunakan?

Ekspresi reguler (regex) adalah pola yang cocok dengan teks. Menguasai regex secara signifikan meningkatkan produktivitas developer — 50 baris kode manipulasi string bisa digantikan oleh satu regex yang dibangun dengan baik. Skill yang sangat berharga bagi developer Indonesia di semua level.

Pola regex yang umum untuk Indonesia: Nomor telepon: ^(08|62)\d{8,11}$. NIK KTP: ^\d{16}$. NPWP: ^\d{2}\.\d{3}\.\d{3}\.\d{1}-\d{3}\.\d{3}$. Kode pos: ^\d{5}$. Nilai rupiah: Rp\s?\d{1,3}(\.\d{3})*.

Frequently Asked Questions

Apa arti flag g, i, m, s dalam regex?

g (global): temukan semua kecocokan, bukan hanya yang pertama. i (case-insensitive): cocokkan tanpa memperhatikan huruf besar/kecil. m (multiline): ^ dan $ cocok dengan awal/akhir setiap baris. s (dotAll): titik (.) cocok dengan karakter newline juga. Flag dapat digabungkan.

Apa perbedaan greedy dan lazy matching?

Quantifier greedy (+, *, {n,}) mencocokkan sebanyak mungkin. <.+> cocok dengan seluruh '<b>teks</b>' sebagai satu kecocokan. Quantifier lazy (+?, *?, {n,}?) mencocokkan sesedikit mungkin. <.+?> cocok dengan '<b>' dan '</b>' secara terpisah. Gunakan lazy untuk mengekstrak tag HTML individual.

Apa perbedaan capturing group dan non-capturing group?

(pola) adalah capturing group — teks yang cocok disimpan dan dapat dirujuk sebagai $1, $2 dalam penggantian. (?:pola) adalah non-capturing group — mengelompokkan pola untuk quantifier atau alternasi tanpa menyimpan kecocokan. Gunakan non-capturing jika Anda tidak perlu merujuk nilainya.

Apa itu lookahead dan lookbehind?

Lookahead (?=pola) memeriksa apakah pola berikutnya cocok tanpa mengkonsumsi karakter. Lookbehind (?<=pola) memeriksa apa yang mendahului. Versi negatif: (?!pola) dan (?<!pola). Contoh: \d+(?=\sribu) cocok dengan angka sebelum kata 'ribu' tanpa menyertakan 'ribu' dalam kecocokan.

Mengapa regex saya bekerja di JavaScript tapi tidak di Python?

Varian regex sedikit berbeda antar bahasa. Python menggunakan \A dan \Z untuk awal/akhir string. Raw string Python (r'pola') menghindari double-escaping backslash. Engine JavaScript yang lebih lama mungkin tidak mendukung lookbehind. Selalu uji regex di lingkungan bahasa target yang sesungguhnya.

Ekspresi reguler vs metode string vs parser vs AI

Ekspresi reguler terbaik untuk pencocokan dan ekstraksi berbasis pola. Kuat tetapi sulit dipahami bagi yang belum berpengalaman. Metode string (split, indexOf, slice) lebih jelas untuk operasi sederhana dan harus diutamakan jika regex terlalu kompleks. Parser khusus (HTML, JSON, CSV) selalu diutamakan dari regex untuk format terstruktur — jangan pernah parse HTML dengan regex. Analisis AI menangani bahasa alami yang ambigu di mana pola tidak dapat diprediksi. Gunakan alat paling sederhana yang aman menyelesaikan masalah.

☕ Buy me a coffee