Si escribo /regex
, el cursor salta temporalmente a la primera coincidencia y se resaltan todas las coincidencias. Esto se actualiza a medida que escribo. ¿Es posible obtener este comportamiento cuando me estoy preparando para hacer una sustitución? Por ejemplo, cuando estoy trabajando en una expresión regular complicada :%s/\<regex\>/
, me gustaría saber qué coincide antes de apretar el gatillo y cambiar todo. ¿Alguna manera de hacerlo?
vim
regular-expression
John Berryman
fuente
fuente
Respuestas:
Para comenzar, escriba su búsqueda usando / (o ? ), Lo que le permitirá ajustar su expresión regular (ya que está usando incsearch)
Una vez que lo tenga todo bien, puede usar el patrón de búsqueda anterior (el que acaba de usar) en el comando sustituto usando dos separadores para el elemento 'buscar':
Por supuesto, puede usar selecciones y rangos, como de costumbre.
fuente
s//
Una opción es que puede tener una bandera de confirmación
c
.:h s_flags
:También puede probar el
grep
comando para ver la salida filtrada y el archivo original resaltado.:g/re/p
o:g/re/
fuente
Bueno, la forma corta de ver con qué coincidirá su expresión regular es haciendo una búsqueda con el
/
uso de la expresión regular deseada. Saltará al primer partido y lo marcará mientras lo está escribiendo. Pruébalovim
, no te decepcionará.fuente