聊一聊JS正则表达式

目录

前言

概述

元字符串

限定符

参数

其他字符

举一些栗子

手机号码

邮箱

身份证

捕获组

前言

当我们在编写前端表单的时候遇到一些像手机号码、电话、电子邮箱、身份证号码这类需要一定的格式校验的字段时,通常我们需要自定义一些规则,这时候就需要用到正则表达式了。以前我都是直接百度搜索正则表达式,然后复制加黏贴,搞定~是不是很爽。只是因正则表达式写起来比较麻烦,而且规则较多,而且网上有现成的。但是需求总是会变的,正确理清楚它们的规则,用起来才得心应手。

概述

元字符串

限定符

参数

其他字符

举一些栗子

手机号码

var pattern = /0?(13|14|15|18|17)[0-9]{9}/;
var right = '13265456162';
var err = '11123224332';
console.log(pattern.test(right));   //true
console.log(pattern.test(err));     //false

邮箱

var pattern = /\w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\.)+[A-Za-z]{2,14}/;
var rightEmail = '112@qq.com';
var errEmail = '112@dcom';
console.log(pattern.test(rightEmail));   //true
console.log(pattern.test(errEmail));     //false

身份证

var pattern = /^\d{6}(18|19|20)?\d{2}(0[1-9]|1[12])(0[1-9]|[12]\d|3[01])\d{3}(\d|X)$/;
var right = '110101199003078398';
var err = '4452211991123265554';
console.log(pattern.test(right));   //true
console.log(pattern.test(err));     //false

捕获组

    正则表达式除了能验证一些字符串是否符合规则之外,还能用来提取。补充一个概念,捕获组。

    捕获组?其实就是正则表达式中被小括号括住的部分。我们就可以通过这样写正则表达式,实现“匹配”和“提取”的双重目的:

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值