Generator Regex dari Contoh

Menulis regex secara manual untuk nomor pesanan, referensi faktur, atau tanggal itu merepotkan dan mudah salah. Tempel satu string contoh dengan format yang ingin Anda kenali: alat ini membacanya dari kiri ke kanan, mengubah setiap rangkaian angka, huruf besar, dan huruf kecil menjadi kelas karakter dengan panjang yang tepat, serta membiarkan tanda baca dan simbol sebagai karakter literal. Anda mendapatkan pola berjangkar sebagai titik awal yang bisa Anda sempurnakan secara manual.

Cara kerjanya

  1. 1

    Masukkan sebuah contoh

    Ketik atau tempel satu string contoh yang mewakili format yang ingin dikenali, misalnya `Order #12345 placed on 2026-04-16`.

  2. 2

    Hasilkan polanya

    Alat menelusuri contoh karakter demi karakter dan mengganti setiap rangkaian karakter sejenis dengan kelas karakter sesuai panjangnya.

  3. 3

    Baca rinciannya

    Di bawah pola, daftar komponen menjelaskan setiap bagian, sehingga Anda melihat bagian mana yang mengenali angka, huruf, atau teks literal.

  4. 4

    Salin dan sempurnakan

    Gunakan pola sebagai titik awal. Sesuaikan panjang tetap atau kelasnya secara manual agar mencakup seluruh rentang data nyata Anda.

Bagaimana pola dibangun

Alat membaca contoh dari kiri ke kanan. Setiap kali menemui rangkaian karakter sejenis, ia mengeluarkan kelas karakter seukuran rangkaian itu:

  • rangkaian angka menjadi \d{n}, dengan n adalah jumlah angka
  • rangkaian huruf besar A-Z menjadi [A-Z]{n}
  • rangkaian huruf kecil a-z menjadi [a-z]{n}
  • satu spasi menjadi \s, dan beberapa spasi menjadi \s{n}
  • selain itu (tanda baca, simbol, huruf beraksen atau non-Latin) dipertahankan sebagai karakter literal yang di-escape

Pola yang selesai dibungkus dengan ^ dan $ agar mengenali seluruh string dari awal sampai akhir, bukan hanya sepotong.

Contoh

Untuk contoh Order #12345 placed on 2026-04-16, alat menghasilkan:

/^[A-Z]{1}[a-z]{4}\s\#\d{5}\s[a-z]{6}\s[a-z]{2}\s\d{4}\-\d{2}\-\d{2}$/

Order adalah satu huruf besar diikuti empat huruf kecil; 12345 menjadi \d{5}; dan tanggal 2026-04-16 menjadi \d{4}\-\d{2}\-\d{2}.

Yang bisa dan tidak bisa dilakukannya

  • Panjangnya tetap. 12345 menjadi \d{5}, yang mengenali tepat lima angka, bukan “satu atau lebih”. Jika jumlahnya bervariasi pada data Anda, ubah {5} menjadi + atau rentang seperti {3,8} secara manual.
  • Ia bekerja dari satu contoh. Ia mencerminkan struktur satu string yang Anda berikan, jadi ia tidak bisa menggeneralisasi dari beberapa contoh sendiri. Berikan string yang paling mewakili.
  • Hanya A-Z dan a-z yang dihitung sebagai huruf. Karakter beraksen dan non-Latin dipertahankan sebagai literal; ganti dengan kelas seperti \w atau \p{L} jika Anda ingin ia mengenali himpunan yang lebih luas.
  • Regex tidak bisa menyatakan segalanya. Hal seperti tanda kurung berimbang berada di luar jangkauan regex mana pun, berapa pun contoh yang Anda berikan. Untuk struktur bersarang Anda butuh parser, bukan pola.

Alur kerja yang baik

  1. Hasilkan pola dari satu contoh yang jelas dan mewakili.
  2. Longgarkan panjang tetap ({5} menjadi + atau {3,8}) di mana panjangnya bervariasi.
  3. Tempel pola ke Penguji Regex dengan kumpulan string nyata yang lebih besar.
  4. Sesuaikan sampai ia mengenali semua yang seharusnya dan tidak satu pun yang tidak seharusnya.

Pertanyaan yang Sering Diajukan

Satu. Generator membaca satu string contoh dan mencerminkan strukturnya. Pilih string yang paling mewakili format Anda, lalu perluas pola secara manual untuk kasus lain.

Alat menghitung jumlah karakter tepat pada contoh Anda, jadi lima angka menjadi \d{5}. Jika jumlahnya bervariasi pada data nyata, ganti {5} dengan +, *, atau rentang seperti {3,8}.

Jangkar membuat pola mengenali seluruh string dari awal sampai akhir. Hapus keduanya jika Anda ingin mencari pola di dalam teks yang lebih panjang.

Ia mengenali A-Z dan a-z sebagai huruf. Karakter lain apa pun, termasuk huruf beraksen, Kiril, atau CJK, tetap sebagai literal. Ganti secara manual dengan kelas seperti \w atau \p{L} jika Anda ingin mengenali lebih banyak.

Sintaks standar (\d, [A-Z], {n}) yang bekerja tanpa perubahan di PCRE, JavaScript, Python, dan sebagian besar mesin.

Alat Terkait

Alat ini tersedia dalam bahasa lain