呵呵,其实说是vim正则表达式查找替换(3),更主要是对之前没有介绍的vim正则表达式基础知识的补全。毕竟基础搞不清楚,就别指望以后的进阶啦~~
一.vim中常用的正则表示的元

$       匹配一行的结束
^ 匹配一行的开始
\< 匹配一个单词的开始
\> 匹配一个单词的结束
* 匹配0或多次
\+ 匹配1或多次
\= 匹配01
\a      匹配一个字符
\d      匹配任一数字
\u      匹配任一大写字母
[]      匹配范围,如t[abcd]s 匹配tas tbs tcs tds
\{}     重复次数,如a\{3,5} 匹配3~5个a
\( \)   定义重复组,如a\(xy\)b 匹配ab axyb axyxyb axyxyxyb …
\| 或,如:for\|bar 表示匹配for或者bar
\%20c 匹配第20
\%20l 匹配第20

二.值得注意的几个地方
(1) 有些符号要用\转义,比如\+表示重复一次或以上,其他的还有一些,:h pattern查看
(2) 非贪婪匹配用\{-}, 如.*\{-}匹配尽量短的任意字符
(3) \i匹配标识符字符[a-zA-Z0-9_],其大写形式表示不包括数字在内的标识符[a-zA-Z_],这两个不是互补的意思,类似的还有\k\f\p,但是\s匹配空白字符,\S匹配非空白字符,这两个是互补的.

好啦,基本vim的正则表达式基础知识也就这些,现在回去看之前那些表达式是不是清楚多了?

版权所有,转载请注明出处。http://www.vimer.cn

vim(gvim)正则表达式查找替换(7)-结合vim脚本

《vim(gvim)正则表达式查找替换》是个比较久的系列了,这次因为博友niejieqiang的一个问题,所以决定继续在写一篇,而主题就是将正则表达式查找替换与vim脚本...

阅读全文

使用Vim(gvim)实现复杂的查找替换的一个例子

今天老婆在整理文档的时候希望能快捷的排版某些格式,无奈发现word并不能满足要求,所以就让我用Vim试一下。 问题如下: 1 加州大学伯克利分校 University of...

阅读全文

vim(gvim)正则表达式查找替换(6)-压缩(删除)重复行

之前有用正则表达式写过一个重复两行压缩成一行的命令,今天我们来看一个讲重复多行压缩成一行的命令。 首先,我们先考虑怎么查出多个重复行。 有两种方法,...

阅读全文

发表评论