regex - texto - vi numero de linea
Convierta vim/search para buscar y reemplazar sin volver a escribir la expresión regular (3)
Cuando realizo una búsqueda y reemplazo en Vim, me gusta utilizar la función de búsqueda ( /regex
) primero para probar visualmente mi expresión regular.
¿Hay una manera simple de mostrar la expresión que escribí en un comando de búsqueda y reemplazo sin escribirla de nuevo?
Por ejemplo, si quería encontrar la palabra realizar y reemplazarla con ejecutar en el texto anterior, después de hacer:
/perform
enter
¿Hay alguna manera de insertar fácilmente el trabajo en el comando de búsqueda y reemplazo a continuación?
:%s/perform/execute/g
% s / blah / blahh / cg no ayudará?
:%s/perform/execute/cg
Puedes escribir
/search_term
y entonces
:%s/<ctrl-r>// etc
donde realmente presiona ctrl + r y luego / para insertar el término de búsqueda.
Si ha realizado una búsqueda previa con: /foo
Simplemente puede escribir:: :%s//bar/g
y reemplazará cada aparición de foo
por bar
porque Vim entiende implícitamente que desea reemplazar su búsqueda anterior. No tienes que volver a escribir foo
en absoluto.
En general, para reutilizar un comando del historial, puede usar el comando q:
para mostrar el historial de comandos y q/
para mostrar el historial de búsqueda en un pequeño búfer. Una vez que esté allí, puede usar cada comando Vim para pegar, cortar, recuperar un comando anterior al presionar <Enter>
...
Aquí encontrará un gran recurso para su tema, este es un webcast sobre regexp y cómo refinarlos usando la ventana de línea de comandos.
http://vimcasts.org/episodes/refining-search-patterns-with-the-command-line-window/