替换所有行中的模式,但仅在另一个模式之前
Replace a pattern in all lines but only before another pattern
我有这样的文件:
something something other text MARKER bla bla something
something else something MARKER foo bar etc pp something
我想用 another thing
替换 something
,但只能在 MARKER
之前。所以替换应该产生:
another thing another thing other text MARKER bla bla something
another thing else another thing MARKER foo bar etc pp something
如何在 vim 中完成?
例如,
:%s/something\ze.*MARKER/another thing/g
见:h /\ze
我有这样的文件:
something something other text MARKER bla bla something
something else something MARKER foo bar etc pp something
我想用 another thing
替换 something
,但只能在 MARKER
之前。所以替换应该产生:
another thing another thing other text MARKER bla bla something
another thing else another thing MARKER foo bar etc pp something
如何在 vim 中完成?
例如,
:%s/something\ze.*MARKER/another thing/g
见:h /\ze