Comment puis-je faire une recherche de mots entiers comme grep -w
dans Vim, qui ne renvoie que les lignes où la chaîne recherchée est un mot entier et ne fait pas partie d'un mot plus grand?
grep -w
: Sélectionnez uniquement les lignes contenant des correspondances qui forment des mots entiers.
Peut-on le faire à Vim?
\<bar\>
correspond à bar
mais ni foobar
ni barbaz
ni foobarbaz
.
Utilisez-le comme ceci dans une substitution:
:s/\<bar\>/baz
Utilisez-le comme ceci pour lister toutes les lignes contenant le mot entier bar
:
:g/\<bar\>
:h pattern
est une bonne lecture.
Tu veux /\<yourword\>
.
Si votre curseur se trouve sur un mot, vous pouvez appuyer sur *
et il fera une recherche Word uniquement pour le mot sous le curseur.
On peut utiliser 'very-magic'\v pour simplifier la commande:
/\v<yourword>
Comme mentionné dans les commentaires, \v
indique que tous les caractères alphanumériques ont une signification spéciale, il suffit donc de saisir uniquement <
et >
plutôt que de leur échapper avec \<
et \>
.