所以我需要在每行中编辑一些内容,除了那些以#开头的内容, 因为他们是评论。我需要用+。
替换所有标签我知道在Vi中我可以翻译这样的东西:
1,$ s / a / A / g,将所有a替换为A
但是如何添加指定所有不以#?
开头的行的范围答案 0 :(得分:4)
g
(全局)ex命令可以执行您想要的操作:
:g!/^#/s/^I/+/g
一般格式为 g [ ! ] / RE / CMD ,其中 RE 是描述将命令应用于 CMD CMD的所有行的模式是任何ex命令。可选的!会反转RE的意义,将命令应用于所有不匹配的行。
要获得行上的 TAB 字符(上面的^I
),您需要点击 ctrl + V 通过 TAB
答案 1 :(得分:0)
似乎可以通过宏技巧实现这一点
qr/^[^#]<Enter>:s/\t/+<Enter>q
3000@r
记录一个宏,该宏将移动到不以#开头的下一行。用制表符替换该行上的所有空格。然后只需重复该宏数百次(或任何数量足够大的文件)