这几天遇到一个gvim中的替换命令:%s/\(^.*$\)\n^.*$/\1/g
感觉gvim的初使用者应该都会比较陌生,故写下此文记录。
GVIM中的正则表达式是一种非常常用的命令,使用方法如下:
:%s/正则表达式/替换字符串/选项
根据上述的使用方法对该命令进行划分:
%s/\(^.*$\)\n^.*$/\1/g
==>
%s/正则表达式/替换字符/选项
在分析之前先了解一些正则匹配的基础知识:
匹配任意字符 ( 除换行符 ) .
匹配重复零次或多次前一字符 *
匹配集合中任意字符 [...]
匹配不属集合 中 任意字符 [^...]
匹配行首、行尾 ^, $
匹配词首、词尾 \<, \>
正则表达式 分组 \(...\)
\n表示换行符
在正规表达式中使用 \( 和 \) 符号括起正规表达式,即可在后面使用\1、\2 等变量来访问 \( 和 \)中的内容。
于是\1 表示第一个正则表达式分组即\(^.*$\) ,我们暂将第一个正则表达式分组\(^.*$\)记为:A
类推,\