正则表达式的常见符号
^匹配字符串的开头
$结尾 .匹配 除了换行符和终止符的任意一个字符
*匹配前一项0次或者多次 +匹配前一项1次或者多次
?匹配前一项0次或者1次
=匹配
!不匹配
:
|两者之间选一个匹配
\转义符
/包裹正则表达式
()表示子表达式的开始和结束,内部放子表达式
[]匹配一个字符类的开始
{}表示限定符表达式的开始
如何区别正则表达式里的* + ?总结如下:
?:匹配前面的子表达式0次或1次
*:匹配0次或多次,即任意次
+:匹配1次或多次
[0-9a-zA-Z]+可以匹配1次或者多次正则里包含的类型符(数字、小写、大写)
[A-Z]+可以匹配一位以上的大写英文字符
(ABC)+则可以匹配连续的ABC字符串。
[0-9a-zA-Z]*可以匹配0次或者多次正则里包含的类型符(数字、小写、大写)
[0-9a-zA-Z]?只能匹配0次或者1次正则里包含的类型符(数字、小写、大写)
常见手机号正则格式
var reg=/^1[3|4|5|7|8]\d{9}$/
意思是第一个匹配的只能是1,第二个匹配的可以是3\4\5\7\8,后面再接9位数字(\d表示数字),$结束,一共11个字符
常见邮箱正则
解释:第一个字符可以为字母或者数字,后接一个+表示可以多次匹配,再接一个. _ -(有些人有这些符号,有些没有,所以用的*,可以0次或者多次),@需要用转义符@,后面接一个子表达式,最后的域名,最少cn,最多四个字符,所以设置了一个长度[2,4]
下面的str是用来测试的邮箱字符串,利用浏览器控制台去测试,如果出错,控制台显示false,正确返回true,同理手机正则也可以这样测试。