In Vim, how do you search for a word boundary character, like the \b in regexp?
VimVim Problem Overview
I'd like to be able to search
/the\b
to find "the" but not "then".
I also tried searching with very magic turned on:
/\vthe\b
Vim Solutions
Solution 1 - Vim
/the\>
See :help /ordinary-atom
I assume "regexp" means PCRE. It is worth noting that Vim's regex syntax differs from (and apparently predates) PCRE.
See also:
- https://stackoverflow.com/questions/3604617/why-does-vim-have-its-own-regex-syntax/3604643#3604643
- https://stackoverflow.com/questions/3864467/whats-the-difference-between-vim-regex-and-normal-regex
- https://stackoverflow.com/questions/13998913/within-vims-regex-engine-why-are-some-metacharacters-escaped-and-some-are-not#13999104
- https://stackoverflow.com/questions/33081331/can-i-make-vim-accept-b-rather-than-just-and/33081758#33081758
Solution 2 - Vim
Use \<
and \>
for word start and word end, respectively.
E.g. In your specific case you would use:
/the>/
Solution 3 - Vim
If very magic
is turned on, then you shouldn't escape the >
character. See what's magic search.
SO in your case you'd do:
/\v<the>
it would search for only the word 'the'.
Solution 4 - Vim
if you are trying to search a word at your cursor. you can just hit *, or # for backward search.