VIM 正则表达式用法整理

在使用VIM进行搜索或替换的操作中,经常会用到正则表达式,网上资料有很多,我这里只是简单汇总整理一下。

元字符

元字符 说明
. 匹配任意字符
[abc] 匹配方括号中的任意一个字符,可用 - 表示字符范围。如 [a-z0-9] 匹配小写字母和数字
[^abc] 匹配除方括号中字符之外的任意字符
\d 匹配阿拉伯数字,等同于 [0-9]
\D 匹配阿拉伯数字之外的任意字符,等同于 [^0-9]
\x 匹配十六进制数字,等同于 [0-9A-Fa-f]
\X 匹配十六进制数字之外的任意字符,等同于 [^0-9A-Fa-f]
\l 匹配小写字母,等同于 [a-z]
\L 匹配小写字母以外的任意字符, 等同于[^a-z]
\u 匹配大写字母,等同于 [A-Z]
\U 匹配大写字母以外的任意字符, 等同于 [^A-Z]
\w 匹配单词字母,等同于 [0-9A-Za-z_]
\W 匹配单词字母之外的任意字符,等同于 [^0-9A-Za-z_]
\t 匹配 <TAB> 字符
\s 匹配空白字符,等同于 [\t]
\S 匹配非空白字符,等同于 [^\t]

一些特殊字符需转意

元字符 说明
\* 匹配 * 字符
\. 匹配 . 字符
\/ 匹配 / 字符
\\ 匹配 \ 字符
\[ 匹配 [ 字符
\] 匹配 ] 字符

表示数量的元字符

元字符 说明
* 匹配0-任意个
\+ 匹配1-任意个
\? 匹配0-1个
\{n,m} 匹配n-m个
\{n} 匹配n个
\{n,} 匹配n-任意个
\{,m} 匹配0-m个
\_. 匹配包含换行在内的所有字符
\{-} 表示前一个字符可出现零次或多次,但在整个正则表达式可以匹配成功的前提下,匹配的字符数越少越好
\= 匹配一个可有可无的项
\_s 匹配空格或断行

表示位置的元字符

元字符 说明
$ 匹配行尾
^ 匹配行首
\< 匹配单词词首
\> 匹配单词词尾

懒惰模式

元字符 说明
\{-n,m} \{n,m} 一样,尽可能少次数地重复
\{-} 匹配它前面的项一次或0次, 尽可能地少
\| "或"操作符
\& 并列

猜你喜欢

转载自www.cnblogs.com/antisamael/p/7744002.html