摘要:表达式操作,在这里是指和表达式相关的方法,我们将介绍六个方法。一、exec(str),返回str中与表达式相匹配的第一个字符串,而且以数组的形 式表现,当然如果表达式中含有捕捉用的小括号,则返回的数组中也可 能含有()中的匹配字符串,例如:

脚本宝典收集整理的这篇文章主要介绍了

js实例教程-Javascript正则表达式实例之表达式操作

脚本宝典小编觉得挺不错的,现在分享给大家,也给大家做个参考,希望能帮助你少写一行代码,多一份安全和惬意。

小宝典致力于为广大程序猿(媛)提供高品质的代码服务,请大家多多光顾小站,小宝典在此谢过。

表达式操作,在这里是指和表达式相关的方法,我们将介绍六个方法。

表达式对象(RegExp)方法:

一、exec(str),返回str中与表达式相匹配的第一个字符串,而且以数组的形 式表现,当然如果表达式中含有捕捉用的小括号,则返回的数组中也可 能含有()中的匹配字符串,例如:

var regx=//d+/;

var rs=regx.exec(“3432ddf53”); 返回的rs值为:{3432}var regx2=new RegExp(“ab(/d+)c”);

var rs2=regx2.exec(“ab234c44”); 返回的rs值为:{ab234c,234}?

另外,如果有多个合适的匹配,则第一次执行exec返回一个第一个匹配,此时继续执行exec,则依次返回第二个第三个匹配。例如:

var regx=/user/d/g;

var rs=regx.exec(“ddduser1dsfuser2dd”);

var rs1=regx.exec(“ddduser1dsfuser2dd”);

则rs的值为{user1},rs1的值为{user2},当然注意regx中的g参数是必须 的,否则无论exec执行多少次,都返回第一个匹配。

二、test(str),判断字符串str是否匹配表达式,返回一个布尔值。

例如:var regx=/user/d+/g;var flag=regx.test(“user12dd”);flag的值为true。

String对象方法

一、match(expr),返回与expr相匹配的一个字符串数组,如果没有加参数g,则返回第一个匹配,加入参数g则返回所有的匹配

例子:

var regx=/user/d/g;

var str=“user13userddduser345”;

var rs=str.match(regx);

rs的值为:{user1,user3}

二、search(expr),返回字符串中与expr相匹配的第一个匹配的index值。

例子:

var regx=/user/d/g;

var str=“user13userddduser345”;

var rs=str.search(regx);

rs的值为:0

三、replace(expr,str),将字符串中匹配expr的部分替换为str。另外在replace方法中,str中可以含有一种变量符号$,格式为$n,代表匹配中被记住的第n的匹配字符串(注意小括号可以记忆匹配)。

例子:

var regx=/user/d/g;

var str=“user13userddduser345”;

var rs=str.replace(regx,”00”);

rs的值为:003userddd0045

例子2:

var regx=/u(se)r/d/g;

var str=“user13userddduser345”;

var rs=str.replace(regx,”$1”);

rs的值为:se3userdddse45

对于replace(expr,str)方法还要特别注意一点,如果expr是一个表达式对象则会进行全局替换(此时表达式必须附加参数g,否则也只是替换第一个匹配),如果expr是一个字符串对象,则只会替换第一个匹配的部分,

例如:

var regx=“user”

var str=“user13userddduser345”;

var rs=str.replace(regx,”00”);

rs的值为: 0013userddduser345

四、split(expr),将字符串以匹配expr的部分做分割,返回一个数组,而且表达式是否附加参数g都没有关系,结果是一样的。

例子:

var regx=/user/d/g;

var str=“user13userddduser345”;

var rs=str.split(regx);

rs的值为:{3userddd,45}

表达式操作,在这里是指和表达式相关的方法,我们将介绍六个方法。

表达式对象(RegExp)方法:

一、exec(str),返回str中与表达式相匹配的第一个字符串,而且以数组的形 式表现,当然如果表达式中含有捕捉用的小括号,则返回的数组中也可 能含有()中的匹配字符串,例如:

var regx=//d+/;

var rs=regx.exec(“3432ddf53”); 返回的rs值为:{3432}var regx2=new RegExp(“ab(/d+)c”);

var rs2=regx2.exec(“ab234c44”); 返回的rs值为:{ab234c,234}?

另外,如果有多个合适的匹配,则第一次执行exec返回一个第一个匹配,此时继续执行exec,则依次返回第二个第三个匹配。例如:

var regx=/user/d/g;

var rs=regx.exec(“ddduser1dsfuser2dd”);

var rs1=regx.exec(“ddduser1dsfuser2dd”);

则rs的值为{user1},rs1的值为{user2},当然注意regx中的g参数是必须 的,否则无论exec执行多少次,都返回第一个匹配。

二、test(str),判断字符串str是否匹配表达式,返回一个布尔值。

例如:var regx=/user/d+/g;var flag=regx.test(“user12dd”);flag的值为true。

String对象方法

一、match(expr),返回与expr相匹配的一个字符串数组,如果没有加参数g,则返回第一个匹配,加入参数g则返回所有的匹配

例子:

var regx=/user/d/g;

var str=“user13userddduser345”;

var rs=str.match(regx);

rs的值为:{user1,user3}

二、search(expr),返回字符串中与expr相匹配的第一个匹配的index值。

例子:

var regx=/user/d/g;

var str=“user13userddduser345”;

var rs=str.search(regx);

rs的值为:0

三、replace(expr,str),将字符串中匹配expr的部分替换为str。另外在replace方法中,str中可以含有一种变量符号$,格式为$n,代表匹配中被记住的第n的匹配字符串(注意小括号可以记忆匹配)。

例子:

var regx=/user/d/g;

var str=“user13userddduser345”;

var rs=str.replace(regx,”00”);

rs的值为:003userddd0045

例子2:

var regx=/u(se)r/d/g;

var str=“user13userddduser345”;

var rs=str.replace(regx,”$1”);

rs的值为:se3userdddse45

对于replace(expr,str)方法还要特别注意一点,如果expr是一个表达式对象则会进行全局替换(此时表达式必须附加参数g,否则也只是替换第一个匹配),如果expr是一个字符串对象,则只会替换第一个匹配的部分,

例如:

var regx=“user”

var str=“user13userddduser345”;

var rs=str.replace(regx,”00”);

rs的值为: 0013userddduser345

四、split(expr),将字符串以匹配expr的部分做分割,返回一个数组,而且表达式是否附加参数g都没有关系,结果是一样的。

例子:

var regx=/user/d/g;

var str=“user13userddduser345”;

var rs=str.split(regx);

rs的值为:{3userddd,45}

觉得可用,就经常来吧!Javascript技巧 脚本宝典 欢迎评论哦! js技巧,巧夺天工,精雕玉琢。小宝典献丑了!

总结

以上是脚本宝典为你收集整理的

js实例教程-Javascript正则表达式实例之表达式操作

全部内容,希望文章能够帮你解决

js实例教程-Javascript正则表达式实例之表达式操作

所遇到的程序开发问题,欢迎加入QQ群277859234一起讨论学习。如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典网站推荐给程序员好友。 本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。

80%的人都看过