JavaScript正则表达式

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})?$/

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zengsange

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值