JavaScript正则表达式
\d 数字 {2}表示固定2位 .表示任意字符 *表示任意位数
(\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2},\\d{3}) \\[.*\\]\\[.*\\] .* - .*";
"^"和"$"
通过在正则表达式的开始添加"^"以及末尾添加"$"来表示一个整体。
若不使用它们,那么正则表达式只匹配某个字符串的部分内容是否符合格式规则,但使用它们,则要求字符串必须从头到尾都满足该格式规则。
只能输入0-9数字
var ckCellNumber = /^[0-9]+$/;
只能输入英文A-Z大小写都可以 长度4-5位
var c = /^[Aa-z]{3,4}$/;
if(c.test('adfaf')){
alert("true");
}else{
alert("flase");
}
身份证验证 d表示数字 {15}表示限制15位 |或者的意思 d表示数字 {18}表示限制18位 d|X|x数字加Xx
var ckcardId = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
[1-9]第一个全是数字,不以0开头 [0-1]第二个只能0-1的数字 {2,8}2-8位
var i = /^[1-9][0-1]{2,8}$/;
if(i.test('101')){
alert("true");
}else{
alert("flase");
}
分组"()","|" () 可以将内容看做一个整体,()中可以使用"|"来表示或关系。
验证国内电话 手机 号码格式如下 0555-6581752、021-86128488 13435302281
0555-6581752 [0-9]{3} 只能输入3位数字, -国内电话-号, [1-9][0-9]{6}只能输入1-9数字 只能输入0-9数字 只能输入6位
021-86128488 [0-9]{2} 只能输入2位数字, -国内电话-号, [1-9][0-9]{7}只能输入1-9数字 只能输入0-9数字 只能输入7位
13435302281 [1-9][0-9]{10,10} 只能输入11位数字 开头数字 1-9 第2个0-9
var b = /(^0[0-9]{3}-[1-9][0-9]{6}$)|(^0[0-9]{2}-[1-9][0-9]{7}$)|(^[1-9][0-9]{10,10})/;
if(b.test('0555-6581752')){
alert("true");
}else{
alert("flase");
}
\d
,匹配单个数字;d 是 digit 这个单词的缩写,它的中文意思就是「数字」\w
,匹配单个单词字符,w 是 word 的缩写,就是字母 a-z,数字 0-9,不包括逗号、句号、加减乘除号、括号等。\s
,匹配单个空白字符,s 是 space 的缩写,就是空白的意思。\n
,匹配换行符,n 是 newline 的缩写,中文就是换行。\r
,匹配回车符,r 就是 return 的缩写,回车在这里就是它的中文意思。\t
,匹配制表符,就是 tab 键打出来的一串用以缩进的空白字符,tab 是 tabel 的缩写,table 就有表格和制表的意思。\b
,匹配单词边界,b 是 boundary 的缩写,中文就是边界的意思。- var c = /\w{3,4}$/;
if(c.test(zengyongbin)){
alert("true");
}else{
alert("flase");
}
}
匹配一个电话号码,形式如 020-88813243。·
简单版本,(开头)三个数字+一个横杠+八个数字(结尾),就是/^\d{3}-\d{8}$/
。
需求变化,只匹配 020 开头的电话号码,就是/^020-\d{8}$/
。
需求变化,支持分机,分机为 5 个数字,加后缀,就是/^020-\d{8}-\d{5}$/
。
需求变化,电话号码可以是7个,用区间量词,就是/^020-\d{7,8}-\d{5}$/
。
需求变化,有可能没有分机,用区间量词,中括号包裹住分机为一组,后面加个问号,表示0或多个,就是/^020-\d{7,8}(-\d{5})?$/
。
需求变化,区隔符可能是横杠,也可能是星号或空格,用集合表达式,就是/^020[-*\s]\d{7,8}([-*\s]\d{5})?$/