En Vim, ¿cómo busca un carácter de límite de palabra, como \ b en regexp?


139

Me gustaría poder buscar

/the\b

para encontrar "el" pero no "entonces" .

También intenté buscar con mucha magia activada:

/\vthe\b

Respuestas:


156

/the\>

Ver :help /ordinary-atom

Supongo que "regexp" significa PCRE . Vale la pena señalar que la sintaxis de expresiones regulares de Vim difiere de (y aparentemente es anterior a) PCRE.

Ver también:


1
¿Por qué no funcionaría? vim no se ajusta a la expresión regular?
Kwolf

44
Supongo que te refieres a expresiones regulares compatibles con Perl. La sintaxis de expresiones regulares de Vim es anterior a PCRE. Agregué enlaces a preguntas relacionadas.
Adam Monsen

"regexp" no significa PCRE. Es simplemente un sinónimo de "regex".
henrebotha

68

Use \<y \>para inicio y final de palabra, respectivamente.

Por ejemplo, en su caso específico usaría:

/ the \> /

36

Si very magicestá activado, entonces no deberías escapar del >personaje. Mira qué es la búsqueda mágica . Entonces, en tu caso, harías:

/\v<the>

buscaría solo la palabra 'el'.


15

si está intentando buscar una palabra en su cursor. simplemente puede presionar *, o #para buscar hacia atrás.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.