Saya mencoba menemukan semua nilai dengan pola berikut:
value="4"
value="403"
value="200"
value="201"
value="116"
value="15"
dan menggantinya dengan value inside scopes.
Saya menggunakan regex berikut untuk menemukan polanya:
.*"\d+"
Bagaimana saya bisa melakukan penggantian?
Jawaban:
Di Notepad ++ untuk mengganti, tekan Ctrl+ Huntuk membuka menu Ganti.
Kemudian jika Anda mencentang tombol "Ekspresi reguler" dan ingin pengganti Anda menggunakan bagian dari pola pencocokan Anda, Anda harus menggunakan "grup tangkap" (baca lebih lanjut di google ). Misalnya, Anda ingin mencocokkan setiap baris berikut
menggunakan
.*"\d+"
pola dan ingin menyimpan hanya nomornya. Anda kemudian dapat menggunakan grup tangkapan dalam pola pencocokan Anda, menggunakan tanda kurung(
dan)
, seperti itu:.*"(\d+)"
. Jadi sekarang dalam pengganti Anda, Anda cukup menulis$1
, di mana $ 1 merujuk ke nilai grup penangkap pertama dan akan mengembalikan nomor untuk setiap pertandingan yang berhasil. Jika Anda memiliki dua grup penangkapan, misalnya(.*)="(\d+)"
,$1
akan mengembalikan stringvalue
dan$2
akan mengembalikan nomornya.Jadi dengan menggunakan:
Temukan:
.*"(\d+)"
Menggantikan:
$1
Itu akan mengembalikanmu
Harap dicatat bahwa ada banyak cara alternatif dan lebih baik untuk mencocokkan pola yang disebutkan di atas. Misalnya polanya
value="([0-9]+)"
akan lebih baik, karena lebih spesifik dan Anda akan yakin bahwa itu hanya cocok dengan garis-garis ini. Bahkan dimungkinkan untuk melakukan penggantian tanpa menggunakan grup penangkapan, tetapi ini adalah topik yang sedikit lebih maju, jadi saya akan meninggalkannya untuk saat ini :)sumber
$1
tidak berhasil untuk saya. Saya menggunakan\1
sebagai gantinya dan itu berhasil.\1
Bekerja di semua versi Notepad ++.$1
hanya berfungsi di yang lebih baru.Hex Editor
plugin. Dalam mode tampilan hex, Notepad ++ tidak menampilkanRegular Expression
opsi untuk Cari / Ganti. Dalam mode tampilan teks, saya melihatRegular Expression
opsi untuk Cari / Ganti. Saya menggunakan Notepad ++ Versi 6.9.2, yang merupakan versi terbaru saat ini.psxls memberikan jawaban yang bagus tetapi saya pikir versi Notepad ++ saya sedikit berbeda sehingga penangkapan $ (tanda dolar) tidak berfungsi.
Saya memiliki Notepad ++ v.5.9.3 dan inilah cara Anda dapat menyelesaikan tugas Anda:
Cari pola: value = \ "([0-9] *) \" Dan ganti dengan: \ 1 (apa pun yang ingin Anda lakukan di sekitar grup penangkap itu)
Ex. Dikelilingi dengan tanda kurung siku
[\ 1] -> akan menghasilkan nilai = "[4]"
sumber
\1
Membantu saya menyimpan nomornya tetapi menghapus kutipan di belakangnya. Saya memiliki 7400 baris dalam dokumen sepertitablename.columnname = '12345'
. Kutipan pertama mudah untuk dihapus, yang kedua dilakukan menggunakan Anda\1
di kotak teks ganti. Terima kasih, +1Menggantikan
(.*")\d+(")
Dengan
$1x$2
Di mana
x
"nilai di dalam cakupan" Anda.sumber
Saya memiliki Notepad ++ v6.8.8
Temukan : [([a-zA-Z])]
Ganti : [\ '\ 1 \']
Akan menghasilkan: $ array [XYZ] => $ array ['XYZ']
sumber
Temukan:
value="([\d]+|[\d])"
Menggantikan:
\1
Itu benar-benar akan mengembalikanmu
4
403
200
201
116
15
js:
sumber