Поиск и замена в vim
Общий вид команды поиска и замены в текущем буфере:
%s/pattern/replace/g
При работе с выделенным словом (или текстом) можно выделить визуальный блок и произвести замену только в нем:
:'<,'>s//replace/g
Правила работы с регулярными выражениями можно найти в статье Особенности при написании регулярных выражений в vim
В случае, когда поиск и замену необходимо выполнить сразу в нескольких файлах, следует использовать команды:
:argdo
- обработать все файлы в списке аргументов
:bufdo
- все буферы
:tabdo
- все табы
:windo
- все окна в текущем табе
Команда:
:arddo %s/pattern/replace/ge | update
произведет замену во всех файлах из списка аргументов и сохранит их. В случае, если ничего не найдено, то сообщение об этом будет подавлено суфиксом ge
:arg
- посмотреть список аргументов
:arg **/*.cpp
- сформировать список аргументов (показан рекурсивный обход текущего каталога)
:argadd **/.*h
- добавить в список аргументов