各种工具之正则表达式语法比较












































































































































































































































































































































































































































































































grep 2.5.1egrep 2.5.1sed 3.02
sed 4.07
awk 3.1.1perl 5.8.0vim 6.1JavaScript ??
转义
行头^^^^^^^
行尾$$$$$$$
n个 {n} {m,n} {m,} {,n}{n}{n}{n}{n}或{n} 仅定义 –posix 或 –re-interval有效(要表达}和{,得用{和} 没有定义–posix或–re-interval时,不能用{n}的语法, }{和}{同义{n}{n}{n}
{0,}, (要表达,得用*)*
{1,}++++或+, (要表达+, 得用+)+++
{0,1}????或?, (要表达?, 得用\?)???
任意字符.... 含n.. /s修饰后则含n. 除n. 除n
(pat) 匹配并获结果(pat)(pat)(pat)(pat)或(pat) (要表达括号,用( ) )(pat)(pat)(pat)
(?:pat) 匹配但不获结果不支持不支持不支持不支持(?:pat)不支持(?:pat)
(?=pat) 等于预查不支持不支持不支持不支持(?=pat)不支持(?=pat)
(?!pat) 不等预查不支持不支持不支持不支持(?!pat)不支持(?!pat)
| 或||||或| (要表达|,得用|)|||
其中任意字符[xyz][xyz][xyz][xyz][xyz][xyz][xyz]
[.ch.] [=ch=]不支持不支持[.ch.]不支持不支持不支持不支持
单词边界 bbbb不支持b不支持b
非单词边界 BBBB不支持B不支持B
单词左右边界 <>< >< >< >不支持 (><和><和\>\<同义不支持(><和><同义< >不支持(><和><同义
控制字符 /cx不支持不支持cx不支持cx不支持cx
数字d不支持不支持不支持不支持ddd
非数字D不支持不支持不支持不支持DDD
换页 f不支持不支持高版本支持ff另义 f表示文件名字符f
换行 n不支持不支持不支持nnnn
回车 r不支持不支持rrrrr
空白 s不支持不支持不支持不支持sss
非空白 S不支持不支持不支持不支持SSS
制表符 t不支持不支持高版本支持tttt
垂直制表符 v不支持不支持高版本支持vv另义 v表示very magicv
单词字符 w [A-Za-z0-9_]www不支持www
非单词字符 W [^A-Za-z0-9]WWW不支持WWW
xn 16进制不支持不支持高版本支持xnxn另义 x表示[0-9A-Za-z]xn
n 八进制不支持不支持不支持nn不支持n
n 后向引用nnnn 仅取结果可用nn 仅取结果可用n
[:alnum:] 字母和数字[:alnum:][:alnum:][:alnum:][:alnum:][:alnum:][:alnum:]不支持
[:alpha:] 字母[:alpha:][:alpha:][:alpha:][:alpha:][:alpha:][:alpha:]不支持
[:cntrl:] 控制字符[:cntrl:][:cntrl:][:cntrl:][:cntrl:][:cntrl:][:cntrl:]不支持
[:digit:] 数字[:digit:][:digit:][:digit:][:digit:][:digit:][:digit:]不支持
[:graph:] 可打印字符(不含空格)[:graph:][:graph:][:graph:][:graph:][:graph:][:graph:]不支持
[:lower:] 小写[:lower:][:lower:][:lower:][:lower:][:lower:][:lower:]不支持
[:print:] 可打印字符(含空格)[:print:][:print:][:print:][:print:][:print:][:print:]不支持
[:punct:] 标点[:punct:][:punct:][:punct:][:punct:][:punct:][:punct:]不支持
[:space:] 空格[:space:][:space:][:space:][:space:][:space:][:space:]不支持
[:upper:] 大写字母[:upper:][:upper:][:upper:][:upper:][:upper:][:upper:]不支持
[:xdigit:] 16进制数字[:xdigit:][:xdigit:][:xdigit:][:xdigit:][:xdigit:][:xdigit:]不支持
[:return:]不支持不支持不支持不支持不支持[:return:]不支持
[:tab:]不支持不支持不支持不支持不支持[:tab:]不支持
[:escape:]不支持不支持不支持不支持不支持[:escape:]不支持
[:backspace:]不支持不支持不支持不支持不支持[:backspace:]不支持