资源描述
正则表达式语法:
1、 字符含义
^ ---à匹配一个输入或一行的开头 eg:/^a/匹配”an A”或”a An”但不匹配”An a”
$ ---à匹配一个输入或一行的结尾,eg:/a$/匹配”An a”或”nA a”但不匹配”an A”;
* ---à匹配前面元字符0次或多次(任意多次),eg:/a*/将匹配0或多个a;/ba*/将匹配b,ba,baa,baaa,…
+ ---à匹配前面元字符1次或多次,eg:/a+/将匹配一个或多个a,/ba+/将匹配ba,baa,baaa,…
? ----à匹配前面元字符0次或1次,eg:/ba?/将匹配b,ba
(x) -----à匹配x保存在名为$1…$9的变量中
x|y -----à匹配x或y
{n} -----à精确匹配n次
{n,} ----à匹配n次以上
{n,m} ---à匹配n-m次
[xyz] ---à字符集(character set),匹配这个集合中的任意一个字符或元字符
[^xyz] --à不匹配这个集合中的任何一个字符
[\b] ----à匹配一个退格符
\b ------à匹配一个单词的边界
\B ------à匹配一个单词的非边界
\cX -----àX是一个a-z或A-Z之间的字符,eg: /\cM/匹配Ctrl+M
\d -----à匹配一个数字字符,等价于[0-9]
\D -----à匹配一个非数字字符,等价于[^0-9]
\n -----à匹配一个换行符
\r -----à匹配一个回车符
\s -----à匹配一个空白字符,包括\n,\r,\f,\t,\v等
\S -----à匹配一个非空白字符,等价于[^\n\f\r\t\v]
\t -----à匹配一个制表符
\v -----à匹配一个垂直制表符
\w -----à数字、字母、下划线,等价于[a-zA-Z0-9_]
\W -----à非\w,等价于[^a-zA-Z0-9_]
2、 正则表达式集
验证数字:^[0-9]*$
验证n位的数字:^\d{n}$
验证至少n位数字:^\d{n,}$
验证m-n位的数字:^\d{m,n}$
验证零和非零开头的数字:^(0|[1-9][0-9]*)$
验证有两位小数的正实数:^[0-9]+(.[0-9]{2})?$
验证有1-3位小数的正实数:^[0-9]+(.[0-9]{1,3})?$
验证非零的正整数:^\+?[1-9][0-9]*$
验证非零的负整数:^\-[1-9][0-9]*$
验证非负整数(正整数 + 0):^\d+$
验证非正整数(负整数 + 0):^((-\d+)|(0+))$
验证长度为3的字符:^.{3}$
验证由26个英文字母组成的字符串:^[A-Za-z]+$
验证由26个大写英文字母组成的字符串:^[A-Z]+$
验证由26个小写英文字母组成的字符串:^[a-z]+$
验证由数字和26个英文字母组成的字符串:^[A-Za-z0-9]+$
验证由数字、26个英文字母或者下划线组成的字符串:^\w+$
验证用户密码(以字母开头,长度在6-18之间,只能包含字符、数字和下划线。):^[a-zA-Z]\w{5,17}$
验证是否含有^%&',;=?$\" 等字符:[^%&',;=?$\x22]+
验证汉字:^[\u4e00-\u9fa5],{0,}$
验证Email地址:^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
验证InternetURL:^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$ ;^[a-zA-z]+://(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$
验证电话号码:^(\(\d{3,4}\)|\d{3,4}-)?\d{7,8}$:--正确格式为:XXXX-XXXXXXX,XXXX-XXXXXXXX,XXX-XXXXXXX,XXX-XXXXXXXX,XXXXXXX,XXXXXXXX。
验证身份证号(15位或18位数字):^\d{15}|\d{}18$
验证一年的12个月:^(0?[1-9]|1[0-2])$
正确格式为:“01”-“09”和“1”“12”
验证一个月的31天:^((0?[1-9])|((1|2)[0-9])|30|31)$
正确格式为:01、09和1、31。
整数:^-?\d+$
非负浮点数(正浮点数 + 0):^\d+(\.\d+)?$
正浮点数:
^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$
非正浮点数(负浮点数 + 0):^((-\d+(\.\d+)?)|(0+(\.0+)?))$
负浮点数:
^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$
浮点数:^(-?\d+)(\.\d+)?
3、运算符优先级
展开阅读全文