Di Vim, jika saya ingin mencari semua nama variabel LX di mana X adalah angka, saya cukup mengetik /L\d
. Namun, ini sepertinya tidak berhasil evil
.
Apakah ada sintaks lain untuk ekspresi reguler dalam mode Jahat, atau apakah saya harus kembali menggunakan beberapa fungsi Emacs untuk mencari dan mengganti menggunakan ekspresi reguler?
Saya menggunakan spacemacs
, dan saya cukup mengerti tentang sebagian besar hal di Emacs, dengan senang hati tetap dalam mode Jahat sepanjang hari :).
evil
regular-expressions
Michelrandahl
sumber
sumber
isearch
atau sesuatu sepertihelm-swoop
atauswiper
? Dua yang terakhir harus dapat melakukan apa yang Anda inginkan dengan mudah. Jika Anda ingin menggunakanisearch
fungsi normal tetapi ingin menggunakan mesin regexp yang berbeda, lihat github.com/benma/visual-regexp-steroids.elJawaban:
evil
menggunakan fasilitas regexp Emacs di bawah tenda. Sayangnya, Emacs tampaknya tidak memiliki kelas sintaks yang terpisah untuk digit, dan tidak mengenali kelas\d
regexp .Jadi, untuk mencocokkan variabel Anda bernama di
LX
manaX
digit, sepertinya Anda terjebak dengan kikuk/L[0-9]
atau bahkan kikuk/L[[:digit:]]
.Perhatikan bahwa, pada prinsipnya, sepertinya Anda dapat menggunakan kode karakter seperti yang tercantum oleh
describe-categories
:Menurut
describe-categories
, digit adalah kategori 6. Oleh karena itu,/L\c6
harus berfungsi (meskipun tidak untuk saya, meskipun kategori lain melakukannya). Namun, Anda tidak akan menghemat banyak pengetikan saat dibandingkan dengan/L[0-9]
.sumber