Вот то, что я хотел бы сделать для каждого из многих файлов:
<a href
затем начните выделение блока>
Проверьте это:
s/<a href\(\_[^>]*\)>/<a href\L\1>/
Здесь говорится: совпадение , за которым следует ноль или более символов, кроме
>
, включая новые строки (обозначается \_
), и, наконец, >
. Замените его на , захваченный текст преобразуйте в строчный (обозначенный
\L
), а в конце поставьте >
.
Очевидно, что если где-то внутри вашего тега есть >
, то вы сами виноваты, но такова жизнь.
(И, если не понятно, вы будете использовать это как :%s/.../...
или :
для некоторого меньшего диапазона. )
Чтобы использовать это для нескольких файлов, вы будете использовать windo
, bufdo
или tabdo
(в зависимости от того, открыты ли файлы как вкладки, окна или просто как буферы). Есть много документации:
В общем, это будет выглядеть примерно так:
:tabdo <range>s/.../.../
:windo <range>s/.../.../
:bufdo <range>s/.../.../ | w
Я добавил команду write в версию bufdo, потому что она не может перейти к следующему буферу, не сохранив текущий. Вы могли бы сделать это и для остальных, если бы хотели писать немедленно, но они будут работать и без этого. Вы можете открыть все файлы - самый простой способ - vim <множество файлов>
, чтобы получить их как буферы, или vim -o <множество файлов>
, чтобы получить их как окна (используйте -O
, чтобы разделить их вертикально, а не горизонтально).