Question Comment faire une recherche insensible à la casse dans Vim


Je voudrais rechercher un mot majuscule, par exemple COPYRIGHT dans un fichier. J'ai essayé d'effectuer une recherche comme:

/copyright/i    # Doesn't work

mais ça ne marche pas. Je sais que chez Perl, si je donne le i flag dans une regex il va transformer l'expression rationnelle en une regex insensible à la casse. Il semble que Vim a sa propre façon d'indiquer une regex insensible à la casse.


1337
2018-02-18 09:17


origine


Réponses:


Vous devez utiliser le \c séquence d'échappement. Alors:

/\ccopyright

Faire l'inverse (cas sensible correspondant), utiliser \C au lieu.


1674
2018-02-18 09:18



Ainsi que les suggestions pour \c et ignorecase, Je trouve le smartcase très utile. Si vous recherchez quelque chose contenant des caractères majuscules, il fera une recherche sensible à la casse; Si vous recherchez quelque chose en minuscules, il fera une recherche insensible à la casse. Vous pouvez utiliser \c et \C pour remplacer cela:

:set ignorecase
:set smartcase
/copyright      " Case insensitive
/Copyright      " Case sensitive
/copyright\C    " Case sensitive
/Copyright\c    " Case insensitive

Voir:

:help /\c
:help /\C
:help 'smartcase'

566
2018-02-18 12:11



Vous pouvez définir le ic option dans Vim avant la recherche:

:set ic

Pour revenir aux recherches sensibles à la casse, utilisez:

:set noic

ic est un raccourci pour ignorecase


237
2018-02-18 09:18



Vous pouvez émettre la commande

:set ignorecase

et après cela, vos recherches seront insensibles à la casse.


49
2018-02-18 09:19



Pour passer de la recherche sensible à la casse à la recherche insensible, j'utilise ce mappage dans mon fichier .vimrc

nmap <F9> :set ignorecase! ignorecase?


41
2018-02-23 11:51



mettez cette commande dans votre fichier vimrc

set ic 

faites toujours une recherche insensible à la casse


15
2018-05-19 10:31



Le bon vieux vim[grep] commander..

:vimgrep /example\c/ &
  • \ c pour insensible à la casse
  • \ C pour cas sensible
  • % est de chercher dans le tampon courant

enter image description here


10
2017-11-18 01:18



Comme d'autres l'ont suggéré:

:set ic

Mais les trucs cool Vous pouvez basculer entre ces modes avec:

:set ic!

8
2018-01-19 09:34



Comme le mention @huyz mentionne parfois le comportement souhaité, on utilise des recherches insensibles à la casse mais des substitutions sensibles à la casse. Ma solution pour ça:

nnoremap / /\c
nnoremap ? ?\c

Avec ça toujours quand tu frappes / ou ? ça va ajouter \c pour une recherche insensible à la casse.


6
2018-02-12 09:58



Je préfère utiliser \c à la fin de la chaîne de recherche:

/copyright\c

5
2018-06-15 01:54