如何将每行的秒aaa替换为yyy
tvz2xvvm1#
执行以下命令将解决您的问题。
:%s/\(aaa.\{-}\)aaa/\1yyy/g
字符串
uqxowvwt2#
另一种方法是使用\zs和\ze,它们标记模式中匹配的开始和结束。所以你可以这样做:
\zs
\ze
:%s/aaa.*\zsaaa\ze/yyy
字符串换句话说,找到“aaa”后面跟着任何东西,然后是另一个“aaa”,然后用“yyy”替换它。如果一行上有三个“aaa“,那么这就不起作用了,你应该使用\{-}而不是*。(参见:h non-greedy)
\{-}
*
:h non-greedy
pod7payv3#
或者:第一个月不使用\ze命令。
3条答案
按热度按时间tvz2xvvm1#
执行以下命令将解决您的问题。
字符串
uqxowvwt2#
另一种方法是使用
\zs
和\ze
,它们标记模式中匹配的开始和结束。所以你可以这样做:字符串
换句话说,找到“aaa”后面跟着任何东西,然后是另一个“aaa”,然后用“yyy”替换它。
如果一行上有三个“aaa“,那么这就不起作用了,你应该使用
\{-}
而不是*
。(参见:h non-greedy
)pod7payv3#
或者:
第一个月
不使用\ze命令。