Cha*_*ist 21 regex vi vim replace substitution
我有一个css文件,我希望每次都添加一个空行}.
我怎么能在Vim中这样做?
Tom*_*ann 33
替换可以很好地工作.
:%s/}/\0\r/g
Run Code Online (Sandbox Code Playgroud)
替换}为整个匹配\0和新的线条字符\r.
要么
:%s/}/&\r/g
Run Code Online (Sandbox Code Playgroud)
在&整个比赛的替代方案中,虽然在我看来看起来有点滑稽.Vim高尔夫爱好者喜欢它,因为它为他们节省了一次击键:)
\0或&在替换的替换部分充当特殊字符.在替换期间,匹配的整个字符串将替换替换中\0的&字符或字符.
我们可以通过更复杂的搜索和替换来证明这一点 -
Which witch is which?
Run Code Online (Sandbox Code Playgroud)
申请替代 -
:s/[wW][ih][ti]ch/The \0/g
Run Code Online (Sandbox Code Playgroud)
给 -
The Which The witch is The which?
Run Code Online (Sandbox Code Playgroud)
:%s/pre/cur\r/g
Run Code Online (Sandbox Code Playgroud)
%: 对整个缓冲区进行操作。
pre(以前的模式):将要更改的模式。
cur(当前模式): 之前的模式将被改变。
\r: 新队。
g: 对一行上的每个匹配重复(默认是只替换第一个)。