Ganti setiap kecocokan dalam satu pass, secara harfiah atau dengan ekspresi reguler JavaScript
Alat dimuat di sini. Perlu JavaScript, karena pekerjaan terjadi pada perangkat Anda.
File Anda dan privasi Anda
Pencarian, penggantian, dan teks yang diterapkan semuanya tetap ada di tab browser ini.
Tidak ada yang diunggah dan tidak ada yang disimpan secara otomatis, jadi file konfigurasi atau blok sumber
kode yang ditempel di sini tidak meninggalkan salinan setelah Anda memuat ulang halaman atau memilih Hapus data.
Apa yang dilakukan alat ini
Cari satu blok teks dan ganti semua kecocokan sekaligus, dengan ekspresi reguler opsional,
sensitivitas huruf besar dan pencocokan seluruh kata. Pola yang tidak valid dilaporkan sebagai pesan dan
teks Anda tidak tersentuh.
Ia menemukan setiap kemunculan istilah pencarian, menggantikan semuanya dalam sekali jalan, dan
melaporkan berapa banyak penggantian yang dilakukan. Tiga tombol mengubah cara istilah dibaca: Regex
memperlakukannya sebagai ekspresi reguler dan bukan karakter literal, Peka huruf besar-kecil aktif
default dan dapat dimatikan, dan Seluruh kata memerlukan batas kata di setiap ujungnya sehingga a
cari daun kucing bersambung saja. Pola yang tidak dapat dikompilasi menghasilkan kesalahan
pesan dan tidak ada perubahan sama sekali, yang penting karena pola yang diketik setengah adalah langkah normal
menuju yang bekerja.
Bagaimana cara menggunakannya
Tempelkan teks Anda ke dalam kotak, lalu ketikkan istilah pencarian dan penggantinya ke dalam dua
bidang.
Biarkan Regex tidak aktif agar sesuai dengan istilah secara harfiah; setiap karakter khusus di dalamnya di-escape,
jadi tanda titik cocok dengan tanda titik dan tidak ada yang lain.
Aktifkan Regex saat Anda membutuhkan pola, dan gunakan $1, $2 dan seterusnya sebagai pengganti
referensi kelompok penangkapannya.
Pilih Ganti semua dan baca hitungan yang dilaporkan setelahnya. Jika itu bukan dirimu
diharapkan, pilih Batalkan dan perbaiki polanya.
Contoh kasus penggunaan
Menukar domain, nama produk, atau variabel yang diganti namanya di seluruh file yang ditempel.
Memformat ulang kolom tanggal dengan pola grup tangkap, mengubah 2024-01-02 menjadi
02/01/2024.
Mengganti sebuah kata tanpa menyentuh kata yang lebih panjang yang memuatnya, menggunakan kata utuh
cocok.
Masukan dan keluaran yang didukung
Menerima
Teks biasa di editor, ditambah istilah pencarian dan string pengganti
JavaScript sintaksis ekspresi reguler, sebagaimana didukung oleh mesin browser Anda
Menghasilkan
Teks yang ditulis ulang dalam kotak yang sama, dengan jumlah penggantian yang dilakukan
text.txt yang dapat diunduh, atau teks disalin ke papan klip Anda
Apa yang tidak bisa dilakukan alat ini
Ganti semua adalah satu-satunya tindakan: tidak ada ganti satu, tidak ada langkah melalui pertandingan, tidak
menyoroti apa yang akan berubah. Jalankan dan baca hitungannya, atau batalkan.
Hanya dua tanda yang digunakan: global selalu, dan peka huruf besar-kecil saat Anda menghapus Kasus
kotak sensitif. Tidak ada tanda multiline, titik-semua, tempel, atau unicode, dan JavaScript
tidak memiliki sintaks flag sebaris, sehingga pola yang dimulai (?m) ditolak karena grup tidak valid.
Tanpa tanda multiline, ^ dan $ berlabuh ke awal dan akhir keseluruhan teks
dari setiap baris, dan tanda titik tidak cocok dengan jeda baris.
Penjaga menangkap pola yang tidak dapat dikompilasi, bukan pola yang lambat. Salah satu itu
backtracks secara serempak masih berjalan di thread utama dan dapat mengunci tab.
Penggantian mencakup keseluruhan teks; tidak ada cara untuk membatasinya pada pilihan, garis
rentang atau beberapa pertandingan pertama.
Kesalahan umum
Menempatkan tanda dolar sebagai penggantinya dan mengharapkannya menjadi literal. Penggantinya
string tidak pernah lolos, bahkan dalam mode literal, jadi $& menyisipkan teks yang cocok dan $$
menghasilkan satu tanda dolar — tulis $$ jika yang Anda maksud adalah satu.
Mengaktifkan Seluruh kata untuk istilah yang mengandung aksen atau tanda baca. Batasan kata
berbasis ASCII, jadi menelusuri kafe atau (kucing) dengan kata Utuh tidak cocok dengan apa pun dan
melaporkan nol penggantian daripada kesalahan.
Menggunakan properti Unicode lolos dalam suatu pola. Tanpa bendera unicode \p{L} tidak
berarti 'huruf apa saja' — cocok dengan karakter literal p{L}, sehingga penggantinya mendarat
suatu tempat yang tidak pernah Anda inginkan.
Berlabuh dengan ^ untuk mengawali setiap baris. Ini hanya cocok dengan bagian paling awal teks, jadi
tepat satu penggantian dilakukan dan setiap jalur lainnya dibiarkan begitu saja.
Catatan teknis
Dalam mode literal, setiap metakarakter ekspresi reguler dalam istilah pencarian di-escape
sebelum dikompilasi, sehingga hanya dapat mencocokkan dirinya sendiri; dalam mode regex istilah tersebut dilewati
seperti yang tertulis. Seluruh kata membungkus apa pun yang Anda dapatkan di \b(?:…)\b, sebagai grup yang tidak menangkap, jadi
pergantian seperti cat|dog dibatasi secara keseluruhan, bukan mengikat batasnya
cabang pertamanya. Kompilasi terjadi di dalam penjaga yang mengembalikan nilai kesalahan
pelemparan, dan pesan dari mesin diteruskan tanpa diberi awalan ganda.
Penghitungannya dilakukan dengan cara mencocokkan sebelum dilakukan penggantian, kemudian dilakukan penggantian senar standar
— itulah sebabnya penggantian menghormati $1 menjadi $9, $& dan $$ di kedua mode: hanya
sisi pencarian lolos.
Pertanyaan yang sering diajukan
Rasa ekspresi reguler manakah yang digunakannya?
Milik JavaScript, dikompilasi oleh mesin di browser yang Anda gunakan. Pola ditulis
untuk varian lain — kelas PCRE, Python, atau POSIX seperti [:alpha:] — akan gagal
untuk mengkompilasi atau mencocokkan sesuatu yang berbeda.
Apakah kelompok penangkap berfungsi sebagai penggantinya?
Ya, dalam mode regex. Temukan (\d{4})-(\d{2})-(\d{2}) dan ganti dengan $3/$2/$1 untuk menulis ulang
2024-01-02 sebagai 02/01/2024. Angka di luar grup dalam pola Anda dibiarkan literal
teks.
Apa yang terjadi jika ekspresi reguler saya tidak valid?
Anda mendapatkan pesan mesin yang menjelaskan apa yang salah, seperti grup yang tidak dihentikan,
dan teks Anda dibiarkan persis seperti semula. Tidak ada yang dibuang, tidak ada yang dibersihkan, dan Anda
dapat terus mengedit polanya.