Vim
基本正则表达式元字符
^ 行首定位符 ^love
$ 行尾定位符 love$
. 匹配单个字符 l..e
* 匹配配前导符0到多次 ab*love
.* 任意多个字符
[] 匹配指定范围内的一个字符 [lL]ove
[ - ] 匹配指定范围内的一个字符 [a-z0-9]ove
[^] 匹配不在指定组内的字符 [^a-z0-9]ove
\ 用来转义元字符 love\.
\< 词首定位符 \<love
\> 词尾定位符 love\>
\(..\) 匹配稍后使用的字符的标签
:% s/172.16.130.1/172.16.130.5/
:% s/\(172.16.130.\)1/\15/
:% s/\(172.\)\(16.\)\(130.\)1/\1\2\35/
:3,9 s/\(.*\)/#\1/
x\{m\} 字符x重复出现m次 o\{5\}
x\{m,\} 字符x重复出现m次以上 o\{5,\}
x\{m,n\} 字符x重复出现m到n次 o\{5,10\}
扩展正则表达式元字符
+ 匹配一个或多个前导字符 [a-z]+ove
? 匹配零个或一个前导字符 lo?ve
a|b 匹配a或b love|hate
() 组字符 loveable|rs love(able|rs) ov+ ov+ (ov)+
(..)(..)\1\2 标签匹配字符 (love)able\1er
x{m} 字符x重复m次 o{5}
x{m,} 字符x重复至少m次 o{5,}
x{m,n} 字符x重复m到n次 o{5,10}
正则匹配示例:vim
/love/ //匹配love单词
/^love/ //匹配以love开头
/love$/ //匹配以love结尾
/l.ve/ //匹配l后面出现任一单个字符
/lo*ve/ //匹配o出现0到多次
/[Ll]ove/ //匹配Love或love
/love[a-z]/ //匹配love后面出现a~z之间任一字符
/love[^a-zA-Z0-9]/ //匹配love后面跟不在英文字符和数字字符之间的一个字符
/.*/
/^$/
/^[A-Z]..$/
/^[A-Z][a-z ]*3[0-5]/
/[a-z]*\./
/^ *[A-Z][a-z][a-z]$/
/^[A-Za-z]*[^,][A-Za-z]*$/
/\<fourth\>/
/\<f.*th\>/
/5{2}2{3}\./
空行
/^$/
/^[ \t]*$/
注释行
/^#/
/^[ \t]*#/
:1,$ s/\([Oo]ccur\)ence/\1rence/
:1,$ s/\(square\) and \(fair\)/\2 and \1/