4

В vim я набрал /foo Enter и нашел несколько совпадений.

Теперь я хочу заменить все экземпляры foo на bar (то есть :%s/foo/bar).

Можно ли это сделать без перепечатывания foo? (например, в командной строке следующее :

1 ответ1

12

Да, вы можете сделать это с :%s//bar .

Объяснение: в команде замены, когда шаблон поиска пуст, Vim использует последний шаблон поиска.

Кроме того, вы можете явно вставить последний шаблон поиска, который хранится в специальном регистре. Вы можете быстро вставить его содержимое, набрав Ctrl-R+/ в режиме вставки или командном режиме.

Поэтому войдите в командный режим, введите %s/ , затем Ctrl-R+/, чтобы вставить последний шаблон, а затем оставшийся /bar .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .