Mencari kata dalam vim?


Jawaban:


207

seperti ini:

/\<word\>

\<berarti awal kata, dan \>berarti akhir kata,

Menambahkan komentar @ Roe:
VIM menyediakan jalan pintas untuk ini. Jika Anda sudah memiliki kata di layar dan Anda ingin menemukan contoh lainnya, Anda dapat meletakkan kursor pada kata dan tekan '*'untuk mencari maju dalam file atau '#'untuk mencari mundur.


3
menempatkan kursor Anda di atas kata dan menekan * (maju) atau # (mundur) adalah jalan pintas
falstro

1
mengapa ini menguntungkan vs hanya melakukan: / kata
jimh

3
@semja: katakanlah Anda memiliki variabel 'data' dan indikasi validnya 'data_valid'. Jika saya ingin mencari hanya 'data' tetapi bukan 'data_valid', maka '/ data' tidak akan melakukan pekerjaan. Saya perlu memberi tahu vim di mana harus berhenti mencocokkan pola.
Nathan Fellman

Ini gagal dalam contoh berikut: 1word1Lihat stackoverflow.com/a/22148017/2609994 untuk solusi.
LSchueler

Apakah ada vimkonfigurasi untuk membuatnya mencari kata yang tepat tanpa membungkus string pencarian dengan \<dan \<karakter?
truthadjustr

77
  1. nama file vim
  2. tekan /
  3. ketikkan kata yang ingin Anda cari
  4. tekan enter

2
Bisakah seseorang menjelaskan mengapa ini mungkin menerima suara turun? Bekerja untukku.
Kiee

13
Karena OP diminta mencari secara khusus "word". Solusi yang diposting di sini pada dasarnya melakukan pencarian %word%, baik itu thiswordisawesomeatau word56atau 26word.
Jguy

9
Juga, karena OP secara eksplisit menyatakan bahwa mereka tahu tentang /perintah. Karena itu, jawaban ini sama sekali tidak membantu.
cmaster - mengembalikan monica

27

Jika Anda bekerja di Ubuntu, ikuti langkah-langkahnya:

  1. Tekan /dan ketik kata untuk mencari
  2. Untuk mencari maju, tekan tombol 'SHIFT' dengan *tombol
  3. Untuk mencari mundur tekan tombol 'SHIFT' dengan #tombol

1
bagaimana saya bisa menyorot kata yang dicari?
jorge saraiva

3
@ jorgesaraiva: Pertama-tama, Anda mungkin akan mendapatkan jawaban lebih cepat dengan mengajukan pertanyaan baru (daripada menunggu seseorang menemukan komentar ini 3 bulan setelah Anda menanyakannya). Kedua, Anda dapat melakukannya :set hlsdi Vim untuk menyorot hasil pencarian Anda. Untuk mematikan sorotan, lakukan:set nohls
Nathan Fellman

1
Ini benar-benar hanya berfungsi jika hasil pertama dari melakukan /wordadalah tepatnya wordbukanword.+
pushkin

ini tidak berfungsi untuk saya pada instance AWS ubuntu 18.04. menggunakan windows git-bash untuk ssh ke server ubuntu jika itu relevan. aneh.
CodingMatters

21

Untuk pencarian dasar:

  • / pattern - cari maju untuk pola
  • ? pola - cari mundur
  • n - ulangi pencarian maju
  • N - ulangi mundur

Beberapa variabel yang mungkin ingin Anda atur:

  • : set ignorecase - case sensitif
  • : set smartcase - gunakan case jika ada tutup yang digunakan
  • : set incsearch - tampilkan kecocokan sebagai pencarian

3
Ini bukan yang diminta OP.
Semua Pekerja Penting
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.