vim正则表达式遵循的是 POSIX regular expressions,和sed、awk、grep类似。
POSIX regular expressions 资料:
Regex Tutorial - POSIX Bracket Expressions
简化正则的写法:/\v 模式
/\v可以打开“very magic”模式,使得正则表达式更加简洁易懂。例如,如果想要查找以“th”开头的单词,可以使用正则表达式“/\vth\w+”
正则反向引用
如将行尾的数字前添加空格:
:%s/\(\d\+\_$\)/ \1/g
正则匹配删除行:
#全部
:g/pattern/d
#按行数
:1,10g/pattern/d
正则区分中英文
中文:[^\x00-\xff],英文:[\x00-\xff]
例如在章节编号和标题中间加空格:
#如将:1.2接口基础,替换成:1.2 接口基础
:%s/\(\d\+\.\d\+\)\([^\x00-\xff]\)/\1 \2/g
文件中的\n替换为换行:
%s/\\n/\r/g
--end--