Cara Menggunakan Search dengan Regex di Vim, Bisa Cepat dan Efisien!
Siapa yang nggak pernah bingung cari teks spesifik di file besar pake Vim? Tenang, regex (regular expression) bisa jadi senjata rahasia buat kamu. Dengan regex, kamu bisa cari pola teks kompleks cuma pake satu baris perintah. Yuk, simak cara pakainya!
Kenapa Harus Regex di Vim?
Vim emang nggak kayak editor modern yang punya fitur pencarian “cari dan temukan” instan. Tapi, regex di Vim bisa bikin kamu lebih produktif, terutama buat:
- Cari email, nomor telepon, atau format teks tertentu.
- Navigasi cepat di kode yang berantakan.
- Ganti teks berulang dengan satu perintah.
Mulai dari Dasar: Masuk Mode Search
Pertama, pastikan kamu di normal mode (tekan Esc
kalo lagi ngetik). Lalu, ketik /
buat cari teks ke depan atau ?
buat ke belakang. Contoh:
/regex
Tekan Enter
, dan Vim bakal loncat ke kecocokan pertama. Navigasi pake n
(next) atau N
(prev).
Karakter Spesial yang Sering Dipakai
Regex di Vim punya aturan sendiri. Beberapa karakter perlu di-escape pake \
. Contoh:
.
= satu karakter apa aja (kecuali newline).*
= karakter sebelumnya muncul 0 atau lebih kali.^
= awal baris.$
= akhir baris.[]
= pilihan karakter (misal[0-9]
buat angka).\+
= karakter sebelumnya muncul minimal 1 kali (harus di-escape).
Contoh praktis:
- Cari kata “error” atau “errors”:
/error$$s$$?
- Cari angka 3 digit:
/\d\{3}
Contoh Kasus: Cari Email atau URL
Regex bisa bantu kamu cari pola kompleks. Contoh:
- Email:
/$$[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$$
- URL:
/https\?:\/\/$$[^ ]+$$
Perhatikan \?
buat karakter opsional dan $$...$$
buat grup.
Modifikasi Search: Case Sensitive, Whole Word, dll
- Case insensitive: Tambah
\c
di akhir pola. Contoh:Bakal cocok dengan “Vim”, “VIM”, atau “vim”./vim\c
- Whole word: Pake
\<
dan\>
buat batasi kata. Contoh:Nggak bakal cocok dengan “enderror”./\<error\>
Tips Pro: Mode “Very Magic”
Ketik \v
di awal pola buat aktifin mode “very magic”. Jadi, kamu nggak perlu ribet escape karakter. Contoh:
/\v(error|warning)
Bakal cocok dengan “error” atau “warning”.
Praktikkan di File Kamu!
Coba buka file teks atau kode di Vim, lalu latihan pake perintah di atas. Makin sering dipakai, makin lancar deh. Regex di Vim emang nggak instan, tapi efeknya luar biasa buat efisiensi kerja.
Navigasi dan Ganti Teks Pake Regex
Setelah nemuin pola, kamu bisa ganti teks pake perintah :s
(substitute). Contoh:
:%s/\<foo\>/bar/g
Ganti semua “foo” jadi “bar” di file. Tambah c
buat konfirmasi tiap ganti:
:%s/foo/bar/gc
Kesalahan Umum dan Cara Menghindarinya
- Lupa escape karakter: Di Vim, beberapa simbol kayak
+
,?
, atau|
perlu di-escape (\+
,\?
,\|
). - Regex terlalu greedy: Pake
\{-}
buat non-greedy. Contoh:Cari teks di antara kurung tanpa ambil semua isi file./$$.*?$$
Dengan latihan, kamu bakal jadi ninja di Vim. Jadi, mulai sekarang, jangan takut eksperimen pake regex!