1、正则表达式语法: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 -匹配
2、 x 或 yn -精确匹配 n 次n, -匹配 n 次以上n,m -匹配 n-m 次xyz -字符集(character set),匹配这个集合中的任意一个字符或元字符xyz -不匹配这个集合中的任何一个字符b -匹配一个退格符b -匹配一个单词的边界B -匹配一个单词的非边界cX -X 是一个 a-z 或 A-Z 之间的字符,eg: /cM/匹配 Ctrl+Md -匹配一个数字字符,等价于0-9D -匹配一个非数字字符,等价于0-9n -匹配一个换行符r -匹配一个回车符s -匹配一个空白字符,包括n,r,f,t,v 等S -匹配一个非空白字符,等价于nfrtvt -匹配一个制表符v -匹配
3、一个垂直制表符w -数字、字母、下划线,等价于a-zA-Z0-9_W -非w,等价于a-zA-Z0-9_2、 正则表达式集验证数字:0-9*$验证 n 位的数字: dn$验证至少 n 位数字: dn,$验证 m-n 位的数字:dm,n$验证零和非零开头的数字:(0|1-90-9*)$验证有两位小数的正实数:0-9+(.0-92)?$验证有 1-3 位小数的正实数:0-9+(.0-91,3)?$验证非零的正整数:+?1-90-9*$验证非零的负整数:-1-90-9*$验证非负整数(正整数 + 0):d+$验证非正整数(负整数 + 0):(-d+)|(0+)$验证长度为 3 的字符:.3$验证由
4、26 个英文字母组成的字符串:A-Za-z+$验证由 26 个大写英文字母组成的字符串:A-Z+$验证由 26 个小写英文字母组成的字符串:a-z+$验证由数字和 26 个英文字母组成的字符串: A-Za-z0-9+$验证由数字、26 个英文字母或者下划线组成的字符串:w+$验证用户密码(以字母开头,长度在 6-18 之间,只能包含字符、数字和下划线 。 ):a-zA-Zw5,17$验证是否含有%=?$“ 等字符:%=?$x22+验证汉字:u4e00-u9fa5,0,$验证 Email 地址: w+(-+.w+)*w+(-.w+)*.w+(-.w+)*$验证 InternetURL:http:
5、/(w-+.)+w-+(/w-./?%&=*)?$ ;a-zA-z+:/(w+(-w+)*)(.(w+(-w+)*)*(?S*)?$验证电话号码:(d3,4)|d3,4-)?d7,8$:-正确格式为:XXXX-XXXXXXX,XXXX-XXXXXXXX,XXX-XXXXXXX,XXX-XXXXXXXX,XXXXXXX,XXXXXXXX。验证身份证号(15 位或 18 位数字): d15|d18$验证一年的 12 个月:(0?1-9|10-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-90-9*)|(0-9*1-90-9*.0-9+)|(0-9*1-90-9*)$非正浮点数(负浮点数 + 0):(-d+(.d+)?)|(0+(.0+)?)$负浮点数:(-(0-9+.0-9*1-90-9*)|(0-9*1-90-9*.0-9+)|(0-9*1-90-9*)$浮点数:(-?d+)(.d+)?3、运算符优先级