表示行开头、至少出现一次数字、(任意字符和至少出现一次数字)出现1次或0次、行结尾。
^:行开头
\d:数字
+:出现至少1次
.:任意字符,除换行和回车之外
?:出现0或1次
(.\d+)?:括号里内出现0或1次
$:行结尾
扩展资料
常用正则表达式:
1、Email地址:^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
2、域名:[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(/.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+/.?
3、InternetURL:[a-zA-z]+://[^\s]* 或 ^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$
4、手机号码:^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$
5、电话号码("XXX-XXXXXXX"、"XXXX-XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX):
^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$
6、国内电话号码(0511-4405222、021-87888822):
\d{3}-\d{8}|\d{4}-\d{7}
7、电话号码正则表达式(支持手机号码,3-4位区号,7-8位直播号码,1-4位分机号)
((\d{11})|^((\d{7,8})|(\d{4}|\d{3})-(\d{7,8})|(\d{4}|\d{3})-(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1})|(\d{7,8})-(\d{4}|\d{3}|\d{2}|\d{1}))$)
^:行开头
\d:数字
+:出现至少1次
.:任意字符,除换行和回车之外
?:出现0或1次
(.\d+)?:括号里内出现0或1次
$:行结尾
合起来就是:
行开头、至少出现一次数字、(任意字符和至少出现一次数字)出现1次或0次、行结尾
^[\w_]*$表示什么呢,首先看\w表示匹配包括下划线的任何单词字符。等价于'[A-Za-z0-9_]'。
然后跟了个_,在看*号:匹配前面的子表达式零次或多次。例如,zo* 能匹配 "z" 以及 "zoo"。 * 等价于{0,}。
你这个表达式的意思就是把这个[\w_](任何单词字符包括下划线,然后跟个下划线)看为一个整体出现零次或多次!
^:行开头
\d:数字
+:出现至少1次
.:任意字符,除换行和回车之外
?:出现0或1次
(.\d+)?:括号里内出现0或1次
$:行结尾
就是说字符串是数字,并且有可能是小数,因为(.\d)?表示可能带小数
也就是说例如 28 或者28.36都是这个正则能匹配的
一个可能带+-号的整数,或空字符串,或一个+-号
^[-\\+]?
[-+]表示+-号?表示前面的内容可有可无,即可能有正负号
[\\d]* \\d表示数字,*表示0到多个数字,[]完全多余
重写为
^[-+]?\\d+$ 这样就只能表示整数,不会匹配空字符串或单独的+-号