Procurando palavra no vim?


Respostas:


207

como isso:

/\<word\>

\<significa o início de uma palavra e \>o fim de uma palavra,

Adicionando o comentário de @ Roe: O
VIM fornece um atalho para isso. Se você já possui uma palavra na tela e deseja encontrar outras instâncias, é possível colocar o cursor na palavra e pressionar '*'para pesquisar no arquivo '#'para frente ou para trás.


3
colocando o cursor sobre uma palavra e pressionando * (para a frente) ou # (para trás) é um atalho
falstro

1
por que isso é benéfico vs apenas fazendo: / word
jimh 27/03

3
@semja: digamos que você tenha uma variável 'data' e sua indicação válida 'data_valid'. Se eu quiser pesquisar apenas 'dados', mas não 'dados_validos', '/ data' não fará o trabalho. Preciso dizer ao vim onde parar de corresponder ao padrão.
Nathan Fellman

Isso falha no exemplo a seguir: 1word1Consulte stackoverflow.com/a/22148017/2609994 para obter uma solução.
LSchueler

Existe uma vimconfiguração para fazê-lo pesquisar a palavra exata sem envolver a cadeia de pesquisa com caracteres \<e \<?
truthadjustr

77
  1. nome do arquivo vim
  2. pressione /
  3. digite a palavra que você deseja pesquisar
  4. pressione Enter

2
Alguém poderia explicar por que isso pode ter recebido votos negativos? Trabalhou para mim.
Kiee

13
Porque o OP pediu para procurar especificamente "word". A solução postada aqui basicamente faz uma pesquisa %word%, seja ela thiswordisawesomeou word56ou 26word.
Jguy

9
Além disso, porque o OP afirmou explicitamente que eles sabem sobre o /comando. Como tal, esta resposta não é de todo útil.
cmaster - restabelece monica 11/08/16

27

Se você estiver trabalhando no Ubuntu, siga as etapas:

  1. Pressione /e digite a palavra para pesquisar
  2. Para procurar em frente, pressione a tecla 'SHIFT' com a *tecla
  3. Para pesquisar para trás, pressione a tecla 'SHIFT' com a #tecla

1
como posso destacar a palavra pesquisada?
Jorge Saraiva

3
@jorgesaraiva: Em primeiro lugar, você provavelmente obterá uma resposta mais rapidamente, fazendo uma nova pergunta (em vez de esperar que alguém tropeçar nesse comentário três meses depois de sua solicitação). Segundo, você pode fazer :set hlsno Vim para destacar o resultado da pesquisa. Para desativar o destaque do:set nohls
Nathan Fellman 30/03

1
Isso realmente só funciona se o primeiro resultado de fazer /wordé exatamente wordvez deword.+
Pushkin

isso não funciona para mim em uma instância do AWS ubuntu 18.04. usando o windows git-bash para ssh no servidor ubuntu, se isso for relevante. esquisito.
CodingMatters 30/09/19

21

Para pesquisa básica:

  • / pattern - pesquisa adiante por padrão
  • ? pattern - pesquisa para trás
  • n - repete a pesquisa direta
  • N - repetir para trás

Algumas variáveis ​​que você pode querer definir:

  • : definir ignorecase - não faz distinção entre maiúsculas e minúsculas
  • : definir smartcase - caso de uso, se houver maiúsculas
  • : definir incsearch - mostrar correspondência como pesquisa

3
Não é isso que o OP está pedindo.
Todos os trabalhadores têm Essencial
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.