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

来源:互联网 发布:备份windows激活信息 编辑:程序博客网 时间:2024/04/25 10:29
各种工具之正则表达式语法比较
在各种常用的工具中,
正则表达式如此的相似却又不同。
下表列出了一些常用的正则表达式,以及其不同之处。
项目总多,遗漏必有不少,请各位看官不吝指出。
以perl的正则为基准,不同的用法以粉红色标出。


grep 2.5.1egrep 2.5.1sed 3.02
sed 4.07awk 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.]不支持不支持不支持不支持单词边界 /b/b/b/b不支持/b不支持/b非单词边界 /B/B/B/B不支持/B不支持/B单词左右边界 <> /< />/< />/< />不支持 (><和/>/<和//>//<同义不支持(><和/>/<同义/< />不支持(><和/>/<同义控制字符 /cx不支持不支持/cx不支持/cx不支持/cx数字/d不支持不支持不支持不支持/d/d/d非数字/D不支持不支持不支持不支持/D/D/D换页 /f不支持不支持高版本支持/f/f另义 /f表示文件名字符/f换行 /n不支持不支持不支持/n/n/n/n回车 /r不支持不支持/r/r/r/r/r空白 /s不支持不支持不支持不支持/s/s/s非空白 /S不支持不支持不支持不支持/S/S/S制表符 /t不支持不支持高版本支持/t/t/t/t垂直制表符 /v不支持不支持高版本支持/v/v另义 /v表示very magic/v单词字符 /w [A-Za-z0-9_]/w/w/w不支持/w/w/w非单词字符 /W [^A-Za-z0-9]/W/W/W不支持/W/W/W/xn 16进制不支持不支持高版本支持/xn/xn另义 /x表示[0-9A-Za-z]/xn/n 八进制不支持不支持不支持/n/n不支持/n/n 后向引用/n/n/n/n 仅取结果可用/n/n 仅取结果可用/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:]不支持

 

http://blogold.chinaunix.net/u/634/showart_2466.html
原创粉丝点击