JavaScript本地对象常用方法(三)——正则表达式对象

正则表达式对象的常用方法

1.replace()
replace()按第一个正则参数进行匹配,替换为第二个参数

var str1="2012qWeR12AsDf12";
var reg1=new RegExp(/[a-z]{1,}/ig);//历遍全部长度最小为1的字母组不分大小写
var str2=str1.replace(reg1,'-');//按正则reg1匹配,并替换成'-'
console.log(str2);//2012-12-12

2.match()
match()在字符串中历遍匹对正则参数的对象,并以数组的形式返回

var str3="2012qWeR12AsDf12";
var reg2=new RegExp(/[a-z]{1,}/ig);
//历遍全部长度最小为1的字母组不分大小写
var reg3=new RegExp(/^([0-9]{1,})([a-z]{1,})([0-9]{1,})([a-z]{1,})([0-9]{1,})$/i);
//历遍一个格式 数字组-字母组-数字组-英文组-数字组 的字符串对象
console.log(str3.match(reg2));//按正则表达式历遍,返回结果
//["qWeR", "AsDf"]
console.log(str3.match(reg3));//正则表达式有括号,先历遍整个字符串确认字符串与正则的格式相同,然后把每个括号内正则再次历遍
//["2012qWeR12AsDf12", "2012", "qWeR", "12", "AsDf", "12", index: 0, input: "2012qWeR12AsDf12"]

3.search()
search()在字符串中历遍匹对正则参数的对象的第一个对象,并返回该对象的下标

var str4="2012qWeR12AsDf12";
var reg4=new RegExp(/12/g);//历遍全部'12'的对象
console.log(str4.search(reg4));//返回匹配的第一个对象的下标 2

4.split()
split()在字符串中历遍匹对正则参数的对象,以这些对象为界分割字符串,第二个参数限制分割所返回的数组的长度

var str5="2012qWeR12AsDf12";
var reg5=new RegExp(/[a-z]{1,}/ig);//历遍全部长度最小为1的字母组不分大小写
console.log(str5.split(reg5));//["2012", "12", "12"]
console.log(str5.split(reg5,1));//["2012"]

5.compile()
compile()编写正则表达式

reg6=new RegExp(/[0-9]{1,}/g);
reg7=new RegExp(/[^a-z0-9]{1,}/ig);
reg7.compile(reg6);//用reg6重新编写reg7
console.log(reg6);//返回正则/[0-9]{1,}/g
console.log(reg7);//返回正则/[0-9]{1,}/g

6.exec()
exec()在字符串中历遍匹对正则参数的对象,并以数组的形式返回,而且返回匹配的第一个对象的下标

var str6="2012qWeR12AsDf12";
var reg8=new RegExp(/[a-z]{1,}/ig);
//历遍全部长度最小为1的字母组不分大小写
var reg9=new RegExp(/^([0-9]{1,})([a-z]{1,})([0-9]{1,})([a-z]{1,})([0-9]{1,})$/i);
//历遍一个格式 数字组-字母组-数字组-英文组-数字组 的字符串对象
console.log(reg8.exec(str6));//按正则表达式历遍,返回匹配的第一个结果和下标
//["qWeR", index: 4, input: "2012qWeR12AsDf12"]
console.log(reg9.exec(str6));//正则表达式有括号进行多步运算,先历遍整个字符串确认字符串与正则的格式相同,返回下标0,然后把每个括号内正则再次历遍
//["2012qWeR12AsDf12", "2012", "qWeR", "12", "AsDf", "12", index: 0, input: "2012qWeR12AsDf12"]

7.test()
test()按正则表达式历遍验证,符合则返回true,不符合则返回false

var str7="2012qWeR12AsDf12";
var reg10=new RegExp(/[a-z]{1,}/ig);
//历遍全部长度最小为1的字母组不分大小写
console.log(reg10.test(str7));//按正则表达式历遍验证,符合返回true
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值