正则表达式

什么是正则表达式?

正则表达式是一种用来查找或者匹配的一种模式,这种模式具有一定的特征,能通过一些语法描述出来

比如 Email地址,IP地址,身份证号码,电话号码等


首先我们先将之前写的验证表单的例子中 姓名和年龄的验证说一下 让大家大致了解一下

姓名 var reName = /^[\u4e00-\u9fa5]+$/;

/  / 是定义方法

^ 代表开始 $代表结束  [\u4e00-\u9fa5]这里面是unicode编码 是一种汉字编码    +加号代表出现一次或多次 至少出现一次

年龄var reAge = new RegExp("^[1-9][0-9]?$")

new RegExp("nowamagic") 也是一种正则表达式定义方法

[1-9]表示从1-9当中的一个数字

[0-9]同上

?表示 最多出现一次


参考文献1

参考文献2

上面只是让大家初步了解一下正则表达式的表达方式 下面有一些定义 和 正则表达式的方法 仅供参考

如何定义正则表达式?


第一种定义方法

var reName = new RegExp("nowamagic");
var reName = new RegExp("nowamagic","i");//忽略大小写 ignoreCase:忽略大小写


第二种定义方法:

javascript中正则表达式的第二种定义方法(perl风格) perl=也是一个脚本语言
 
var reName = /nowamagic/;
var reName = /nowamagic/i;


正则表达式方法:


test -- RegExp的test方法用来测试字符串是否匹配给出的匹配模式,返回布尔值;

exec -- RegExp的exec方法返回包含第一个匹配的数组或null;
match -- String的match方法返回包含所有匹配子字符串的数组;
replace -- String的replace方法完成string的替换操作,支持正则表达式;
search -- 与String的indexof方法类似,不同的是search支持正则表达式,而不仅仅是字符串;
split -- 按照一定规则拆分字符串并将子字符串存储到数组中的String方法。

正则表达式中需要转义的字符

.,\,/,*,?,+,[,(,),],{,},^,$,|


正则表达式分组

var reNum = /[0-9]/;
var reLetter = /[a-zA-Z]/;


特殊字符

\d 任何一个数字字符,等价于[0-9]
\D 任何一个非数字字符,等价于[^0-9]
\w 任何一个字母数字或下划线字符,等价于[a-zA-Z_]
\W 任何一个非字母数字和下划线字符,等价于[^a-zA-Z_]
\s 任何一个空白字符,包括换页符、换行符、回车符、制表符和垂直制表符,等价于[\f\n\r\t\v]
\S 任何一个非空白字符,等价于[^\f\n\r\t\v]
. 换行和回车以外的任何单个字符,等价于[^\n\r]

量词

? 出现零次或一次,最多一次
* 出现任意次(零次、一次、多次)
+ 出现一次或多次,至少一次
{n} 能且只能出现n次
{n,m} 至少出现n次,最多出现m次

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值