Oli*_*ons 8 vim search replace lowercase substitution
以下是我想要做的事情,对于许多文件中的每一个:
<a href然后开始块选择>Cas*_*bel 15
看看这个:
s/<a href\(\_[^>]*\)>/<a href\L\1>/
Run Code Online (Sandbox Code Playgroud)
这表示:匹配<a href,后跟零个或多个字符>,包括换行符(由...表示\_),最后是a >.替换为<a href,捕获的文本转换为小写(由...表示\L)和尾随>.
如果>你的标签里面有某个地方,显然你是独立的,但这就是生活.
(如果不清楚,你会将它用作:%s/.../...或:<range>s/.../.../用于较小的范围.)
要在多个文件上使用它,您将使用windo,, bufdo或tabdo(取决于文件是作为选项卡,窗口还是作为缓冲区打开).那里有很多文档:
一般来说,它可能看起来像这样:
:tabdo <range>s/.../.../
:windo <range>s/.../.../
:bufdo <range>s/.../.../ | w
Run Code Online (Sandbox Code Playgroud)
我已经向bufdo版本添加了一个写命令,因为它无法保存当前的缓冲区,无法移动到下一个缓冲区.你也可以为其他人做这件事,如果你想立即写作,但他们可以不用.由你决定打开所有文件 - 最简单的方法就是vim <lots of files>将它们作为缓冲区,或者vim -o <lots of files>将它们作为窗口(用于-O垂直分割而不是水平分割).