onlinetools.dev

Penguji Regex

Uji ekspresi reguler dengan penyorotan kecocokan dan grup secara langsung

Berjalan lokal
loading…
Tentang alat ini

Tulis sebuah pola, tempel teks contoh, dan setiap kecocokan tersorot sambil Anda mengetik — lengkap dengan grup tangkapan, grup bernama, serta posisi kecocokan yang dirinci di bawahnya. Penguji ini memakai mesin RegExp JavaScript, jadi perilakunya persis seperti di Node.js dan browser, termasuk lookbehind, grup bernama, dan escape properti Unicode.

Bendera dinyalakan per huruf (g, i, m, s, u, y, d) dan polanya dikompilasi pada setiap ketukan tombol; galat sintaksis muncul seketika dengan pesan dari mesinnya sendiri, bukan setelah Anda menekan tombol. Pola yang bisa cocok kosong seperti a* ditangani dengan aman, dan jumlah kecocokan dibatasi 10.000 agar .* yang kelewat longgar tidak membekukan tab.

Ragam regex berbeda antar-mesin — pola yang jalan di sini mungkin perlu disesuaikan untuk PCRE, RE2, atau modul re milik Python, terutama soal dukungan lookbehind, kuantifier posesif, dan bendera sebaris.

Pertanyaan yang sering diajukan

Ragam regex apa yang dipakai penguji ini?
ECMAScript (JavaScript), sebagaimana diterapkan browser Anda sendiri. Ia mendukung lookahead, lookbehind, grup tangkapan bernama, referensi balik, dan escape properti Unicode seperti \p{Letter} (dengan bendera u). Ia tidak mendukung sintaksis khas PCRE seperti kuantifier posesif atau rekursi.
Kenapa pola saya cocok dengan semuanya / tidak cocok sama sekali?
Dua penyebab klasiknya: metakarakter yang lupa di-escape (. cocok dengan karakter apa pun — tulis \. untuk titik harfiah), atau bendera g yang terlupakan. Penguji ini selalu mencari semua kecocokan, tetapi kode Anda hanya akan menemukan yang pertama bila g tidak dipasang.
Apa itu grup tangkapan bernama?
Sintaksis (?<nama>...) memberi label pada sebuah grup sehingga Anda membaca hasil menurut nama alih-alih posisi: match.groups.nama di JavaScript. Panel grup di bawah daftar kecocokan menampilkan tangkapan bernomor sekaligus bernama untuk tiap kecocokan.
Apakah regex dari sini bisa dipakai apa adanya di Python atau Go?
Sering bisa, tetapi tidak selalu. Kelas karakter, kuantifier, dan jangkar bersifat portabel; lookbehind, sintaksis grup bernama (Python memakai (?P<nama>...)), dan bendera sebaris berbeda. Mesin RE2 di Go bahkan menolak referensi balik dan lookaround sepenuhnya.
Alat terkait