Поиск слова в VIM?


Ответы:


207

как это:

/\<word\>

\<означает начало слова и \>означает конец слова,

Добавление комментария @ Роу:
VIM предоставляет ярлык для этого. Если у вас уже есть слово на экране, и вы хотите найти другие его экземпляры, вы можете навести курсор на слово и нажать '*'для поиска вперед в файле или '#'для поиска назад.


3
поместите курсор на слово и нажмите * (вперед) или # (назад) - это ярлык
falstro

1
почему это выгодно против просто делать: / word
jimh

3
@semja: допустим, у вас есть переменная data и ее правильное указание data_valid. Если я хочу искать только «данные», но не «data_valid», то «/ data» не выполнит эту работу. Мне нужно сказать vim, где прекратить сопоставлять шаблон.
Натан

Это терпит неудачу в следующем примере: 1word1См. Решение stackoverflow.com/a/22148017/2609994 .
Л.С.Шуелер

Есть ли vimконфигурация , чтобы сделать его искать точное слово без упаковки строки поиска с \<и \<символами?
Правдаadjustr

77
  1. VIM имя файла
  2. Нажмите /
  3. введите слово, которое вы хотите найти
  4. нажмите Ввод

2
Может ли кто-нибудь объяснить, почему это могло быть принято против? Работал на меня.
Ки

13
Потому что ОП попросил искать специально "word". Решение, размещенное здесь, в основном выполняет поиск %word%, будь то thiswordisawesomeили word56или 26word.
Jguy

9
Кроме того, потому что ОП явно заявил, что они знают о /команде. Таким образом, этот ответ не поможет вообще.
cmaster - восстановить монику

27

Если вы работаете в Ubuntu, выполните следующие действия:

  1. Нажмите /и введите слово для поиска
  2. Для поиска вперед нажмите клавишу «SHIFT» с *клавишей
  3. Для поиска в обратном направлении нажмите клавишу «SHIFT» с #клавишей

1
как выделить выделенное слово?
Хорхе Сарайва

3
@jorgesaraiva: во-первых, вы, вероятно, получите ответ быстрее, задав новый вопрос (вместо того, чтобы ждать, пока кто-нибудь наткнется на этот комментарий через 3 месяца после того, как вы его спросили). Во-вторых, вы можете сделать это :set hlsв Vim, чтобы выделить результаты поиска. Чтобы отключить подсветку, делайте:set nohls
Натан

1
Это действительно работает только в том случае, если первый результат от выполнения /wordточно wordвместоword.+
пушкин

это не работает для меня на экземпляре AWS Ubuntu 18.04. Использование Windows Git-Bash для SSH к серверу Ubuntu, если это актуально. странно.
CodingMatters

21

Для базового поиска:

  • / pattern - искать образец
  • ? pattern - поиск в обратном направлении
  • n - повторить поиск вперед
  • N - повторить в обратном направлении

Некоторые переменные, которые вы можете захотеть установить:

  • : set ignorecase - без учета регистра
  • : установить smartcase - использовать случай, если используются какие-либо заглавные буквы
  • : set incsearch - показывать соответствие как поиск

3
Это не то, что просит ОП.
Все работники необходимы
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.