我想在一个文本文件中搜索特定的模式。如果出现了这个模式,那么这一行后面的内容就不再需要,可以删除。
我尝试使用以下命令,但目前为止都没有成功。
:%s/{pattern}/d$
:g/{pattern}/d$
如果有任何建议,将不胜感激。
你觉得:%s/{pattern}.*//
这个命令会生效吗?
或者,以下内容也可以工作
:g/{pattern}/normal nd$
对于你想要的,我会选择mirod的建议。我发表的内容稍微更加灵活,但在类似情况下可能会很有用。
解释:
对于每一行,匹配模式后执行以下普通模式命令'nd$'。将光标移到该行开头,'n'跳转到匹配的模式上,'d$'删除至该行末尾。
norm nD
,因为 D
与 d$
同义。 - Conner要替换一个模式和其他任何东西,请使用正则表达式通配符.*
:1,$s/pattern.*//g
%s/\\(replay-pattern-later\\) pattern2/\1/gc
这将重复 pattern1 但排除 pattern2。使用 "/gc" 全局应用(继续保持)并提示每个出现。
:%s/\\\\.*//
(反斜杠需要转义)吗? - mirod