2009-07-13 15 views
6

Cómo buscar la palabra start \word in vim. Puedo hacerlo usando el menú de búsqueda. ¿Hay algún otro atajo para esto?Búsqueda de carácter de barra invertida en vim

+0

¿Puede aclarar la pregunta? ¿Está buscando palabras que comiencen con 'palabra' o con '\ palabra' o solo con el patrón '\ palabra' ya sea al principio de una palabra o no? –

+0

El título de la pregunta hace referencia específica a la barra diagonal inversa, por lo que no sería solo "palabra". –

+0

He solucionado la mayoría de los errores tipográficos pero uno: ¿Debería ser "Puedo" o "No puedo"? –

Respuesta

13

Probar:

/\\word 

en modo comando.

4

Puede buscar casi cualquier cosa en su documento utilizando expresiones regulares. Desde el modo normal, escribe '/' y luego comienza a escribir tu expresión regular, y luego presiona enter. '\ <' coincidirá con el comienzo de una palabra, por lo

/\<foo 

coincidiría con la cadena 'foo', pero sólo es posible cuando al comienzo de una palabra (precedido por un espacio en blanco en la mayoría de los casos).

Puede buscar la barra invertida al escapar con una barra invertida, por lo que:

/\<\\foo 

encontraría el patrón '\ foo' al principio de una palabra.

+0

Combina tu respuesta y la mía, y obtienes:/\ <\\ word :-) –

+0

Gracias, Chris. Editado –

+1

'\ <\\' no es particularmente significativo, aunque: '\' no es un carácter de palabra. – ephemient

3

La razón por la búsqueda de algo como "\" es diferente es porque "\" es un carácter especial y necesita ser escapado (precedidas por una barra invertida)

Del mismo modo, para buscar "$ 100", que incluye el carácter especial "$":

Press/
Type \$100 
Press return 

para buscar "ABC", que no incluye un carácter especial:

Press/
Type abc 
Press return 
2

no directamente relevante (/\\word es la solución correcta, y aquí nada cambia eso), pero para su información:

:h magic

Si usted es para un patrón con muchos caracteres con un significado especial para expresiones regulares, es posible "nomagic" y modo "muy nomagic" útil.

 
/\V^.$ 

buscará la cadena literal ^.$, en lugar de "líneas de exactamente un carácter" (\v "muy mágico" y el valor predeterminado \m modos "mágicas") o "líneas de exactamente un periodo" (\M " nomagic "modo).

Cuestiones relacionadas