搜索和范围的行和列的
问题描述:
我想申请一个搜索和替换,在行和列的给定范围的文本文件只有这样的工作正则表达式替换:搜索和范围的行和列的
AAABBBFFFFBBBAAABBB
AAABBBFFFFBBBAAABBB
GGGBBBFFFFBHHAAABBB
对于例如,我想与管线1范围YYY取代BBB至2,从塔4至6,然后获得该输出:
AAAYYYFFFFBBBAAABBB
AAAYYYFFFFBBBAAABBB
GGGBBBFFFFBHHAAABBB
有一种方法用Vim做呢?
答
:1,2 s/\%3cBBB/YYY/
\%3c
意味着第三列(见:help /\%c
或多个全球:help pattern
)
答
如果这始终是要替换的第一个,根本就没有指定/ G
:1,2s/BBB/YYY/
将正常工作。
或者,如果您需要准确指定要替换的列,则可以使用\%Nv
语法,其中N是虚拟列(因为它看起来是列,所以选项卡是多列,所以使用c而不是v)列)
在线路1和更换第二组B的2个可以与进行:
:1,2s/\%11vBBB/YYY/
+0
'\%v' vs'\%c' ...由他来告诉我们。 – Benoit 2010-10-02 18:46:06
该列是第四个::1,2s/\%4cBBB/YYY / – aleroot 2010-10-03 11:25:18