Jika saya mengetik /regex
maka kursor sementara melompat ke pertandingan pertama dan semua pertandingan disorot. Pembaruan ini saat saya mengetik. Apakah mungkin untuk mendapatkan perilaku ini saat saya bersiap untuk melakukan substitusi? Misalnya, ketika saya mengerjakan ekspresi reguler yang rumit :%s/\<regex\>/
, saya ingin tahu apa yang cocok sebelum saya menarik pelatuk dan mengubah segalanya. Ada cara untuk melakukannya?
vim
regular-expression
John Berryman
sumber
sumber
Jawaban:
Ketik pencarian Anda menggunakan / (atau ? ) Untuk memulai, yang akan memungkinkan Anda untuk mengubah regex Anda (karena Anda menggunakan pencarian)
Setelah semuanya bagus, Anda dapat menggunakan pola pencarian sebelumnya (yang baru saja Anda gunakan) dalam perintah pengganti dengan menggunakan dua pemisah untuk item 'pencarian':
Tentu saja, Anda dapat menggunakan pilihan dan rentang, seperti biasa.
sumber
s//
Salah satu opsi adalah Anda dapat memiliki bendera konfirmasi
c
.:h s_flags
:Anda juga bisa mencoba
grep
perintah untuk melihat output yang difilter dan file asli yang disorot.:g/re/p
atau:g/re/
sumber
Nah, cara singkat untuk melihat apa yang akan cocok dengan ekspresi reguler Anda adalah melakukan pencarian dengan
/
menggunakan regex yang Anda inginkan. Ini akan melompat ke pertandingan pertama dan menandainya saat Anda mengetiknya. Cobalah -vim
tidak akan mengecewakan Anda.sumber