Gvim高级操作005--删除重复行

Gvim高级操作--删除重复行

Gvim没有直接删除重复行的快捷操作,所以需要采用组合命令的方式进行重复行删除。

基本原理是

  1. 首先进行排序操作,会将重复行相邻排列
  2. 然后采用正则表达式匹配两个相邻的重复行,删除其中的一行
  3. 最后再删除空白行,则完成了目标。

1 、先排序

:sort

2、正则表达式匹配相邻重复行,删除其中一行

:g/\(.\+\)$\n\1/d

g表示全文,$表示行尾,\(.\+\)表示任意一行,\1表示括号内内容,因此\(.\+\)$\n\1表示两个连续行内容相同,g/xxxx/d表示在全文中查找匹配内容,并且删除匹配内容的第一行。

3、删除空白行

:g/^\s\*$/d

^表示行首,$表示行尾,\s表示空格、\*表示任意个(0个或者多个)

^\s\*$表示行首到行尾后有且只有任意个空格

你可能感兴趣的:(gvim)