JS正则表达式

JavaScript的正则表达式是一个非常难以理解的代码(可以说是天书),但是,只要你学习了正则表达式,你就觉得正则表达式非常简单。


下面先给大家看一段正则表达式:

var test = new RegExp(/^\d{3}-?\d{4}-?\d{4}$/)

是不是像天书呢?

下面我们来解析这段代码:

首先是RegExp:

var test = new RegExp(/^\d{3}-?\d{4}-?\d{4}$/)

RegExp表示这是一个正则表达式

然后我们就开始分析括号内的“天书”:


var test = new RegExp(/^\d{3}-?\d{4}-?\d{4}$/)  /表示正则表达式的开头
var test = new RegExp(/^\d{3}-?\d{4}-?\d{4}$/) ^表示从字符串开头进行匹配
var test = new RegExp(/^\d{3}-?\d{4}-?\d{4}$/) \d表示要与一位数字匹配
var test = new RegExp(/^\d{3}-?\d{4}-?\d{4}$/) {3}表示要匹配三位数字
var test = new RegExp(/^\d{3}-?\d{4}-?\d{4}$/) -?表示与一个"-"符号或者和空字符串匹配(比如xxx-xxx 或者 xxxxxx)
var test = new RegExp(/^\d{3}-?\d{4}-?\d{4}$/) \d同上
var test = new RegExp(/^\d{3}-?\d{4}-?\d{4}$/) {4}表示要与4位数字匹配
var test = new RegExp(/^\d{3}-?\d{4}-?\d{4}$/) -? \d {4} 同上
var test = new RegExp(/^\d{3}-?\d{4}-?\d{4}$/) $表示与字符串末尾匹配
var test = new RegExp(/^\d{3}-?\d{4}-?\d{4}$/) /表示结束正则表达式


如果你已经知道了这些“天书”的作用,那么也不难猜出这个正则表达式的作用:检测一个是否为中国电话号码的正则表达式


那么如何使用正则表达式呢?请看下面:

// 首先需要有一个要搜索的字符串:
var PhoneNumber = "123-4567-8910";
// 然后判断这个字符串是否与正则表达式匹配,对这个字符串调用方法match:
var search = PhoneNumber.match(test);
// 结果是一个数组,其中包含与正则表达式匹配的子串,如果结果为null,就说明它与正则表达式不匹配,下面是一个失败的例子:
var invalid = "1234_56789_12345";
var search2 = invalid.match(test);










评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值