技巧99-删除所有包含模式的文本行

  • 将:global命令与:delete命令组合使用,可以快速裁剪文件内容。

用':g/re/d' 删除所有匹配

  • 文本
<ol>
<li>
<a href="cfanzp.csdn.net/">
show cfanzp blog1
</a>
</li>
<li>
<a href="cfanzp.csdn.net/">
show cfanzp blog2
</a>
</li>
</ol>
  • 执行命令
/\v\<\/?\w+>
:g//d
  • 执行后文本
show cfanzp blog1
show cfanzp blog2
  • 与:substitue命令类似,也可将:global命令的查找域留空。
  • \v 开启very magic模式
  • < 匹配<
  • /? 匹配可选的正斜杠
  • \w+ 匹配一个或多个单词
  • 匹配单词结尾的分隔符>

grep的来历

  • global命令的简写形式
  • re表示regular expression
  • p 是:print的缩写
  • /去掉就是grep
:g/re/p

用':v/re/d' 之保留匹配行

  • 删除所有不包含cfanzp的行
  • vgroup 简写为v
:v/cfanzp/d