我正在寻找一种方法来替换除最后一行之外的所有点。
示例:
Blah - whatever - foo.bar.baz.avi
应该成为
Blah - whatever - foo bar bar.avi
由于我在文件中有多行,并且每行中的点数不同,我正在寻找通用解决方案而不是像“替换前X匹配”那样,X是常量。< / p>
答案 0 :(得分:11)
答案 1 :(得分:6)
作为第一个答案的变体,您可能更喜欢这种语法:
%s/\.\ze.*\./ /g
让你把断言在搜索运算符之后有一个完整的句号。
答案 2 :(得分:0)
另一种可能有用的学习方法(取代内部视觉选择)将是:
:g/^/normal $F.hv0:s/\%V\./ /g
的 ^M
强>
使用 CTRL-V 输入^M
,输入。
这意味着:对于每一行(g/^/
)类型$F.
(转到最后一个点),从视觉上选择从左边的字符到行的开头(hv0
),然后仅在视觉选择(:s/\./ /g^M
)内替换点(\%V
)。