各种工具之正则表达式语法比较在各种常用的工具中,
正则表达式如此的相似却又不同。
下表列出了一些常用的正则表达式,以及其不同之处。
项目总多,遗漏必有不少,请各位看官不吝指出。
以perl的正则为基准,不同的用法以粉红色标出。
grep2.5.1egrep2.5.1sed3.02
sed4.07awk3.1.1perl5.8.0vim6.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表示verymagic\v单词字符\w[A-Za-z0-9_]\w\w\w不支持\w\w\w非单词字符\W[^A-Za-z0-9]\W\W\W不支持\W\W\W\xn16进制不支持不支持高版本支持\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:]不支持
本文来源:
0 评论:
发表评论