| 24>/n:匹配一个换行符。因为是换行符,所以在表达式中要加入m参数。例子:
 var regx=/a/nbc/m;
 var str=“a
 bc”;
 var rs=regx.exec(str);
 结果:匹配成功,rs的值为:{ },如果表达式为/a/n/rbc/,则不会被匹配,因此在一般的编辑器中一个”Enter”键代表着“回车换行”,而非“换行回车”,至少在textarea域中是这样的。
 25>/r:匹配一个回车符
 26>/s:匹配一个空格符,等同于[ /f/n/r/t/v/u00A0/u2028/u2029].例子:
 var regx=//si/;
 var rs=regx.exec(“Beijing is a city”);
 结果:匹配成功,rs的值为:{ i}
 27>/S:匹配一个非空格符,等同于[ ^/f/n/r/t/v/u00A0/u2028/u2029].例子:
 var regx=//Si/;
 var rs=regx.exec(“Beijing is a city”);
 结果:匹配成功,rs的值为:{ei}
 28>/t:匹配一个tab例子:
 var regx=/a/tb/;
 var rs=regx.exec(“a bc”);
 结果:匹配成功,rs的值为: {a       bc}
 29>/v:匹配一个竖向的tab 30>/w:匹配一个数字、_或字母表字符,即[A-Za-z0-9_ ]。例子:
 var regx=//w/;
 var rs=regx.exec(“$25.23”);
 结果:匹配成功,rs的值为:{2}
 31>/W:匹配一个非数字、_或字母表字符,即[^A-Za-z0-9_ ]。例子:
 var regx=//w/;
 var rs=regx.exec(“$25.23”);
 结果:匹配成功,rs的值为:{$}
 32>/n:注意不是/n,这里n是一个正整数,表示匹配第n个()中的字符。例子:
 var regx=/user([,-])group/1role/;
 var rs=regx.exec(“user-group-role”);
 结果:匹配成功,rs的值为:{user-group-role,-},同样对user,group,role的匹配也是成功的,但像user-group,role等就不对了。
 33>/0:匹配一个NUL字符。 34>/xhh:匹配一个由两位16进制数字所表达的字符。 35>/uhhhh:匹配一个由四位16进制数字所表达的字符。 3,表达式操作
 1)表达式操作,在这里是指和表达式相关的方法,我们将介绍六个方法。2)表达式对象(RegExp)方法:
 1>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},rs的值为{rs2},当然注意regx中的g参数是必须的,否则无论exec执行多少次,都返回第一个匹配。后面还有相关内容涉及到对此想象的解释。
 2>test(str),判断字符串str是否匹配表达式,返回一个布尔值。例如:var regx=/user/d+/g;
 var flag=regx.test(“user12dd”);
 flag的值为true。
 3)String对象方法 1>match(expr),返回与expr相匹配的一个字符串数组,如果没有加参数g,则返回第一个匹配,加入参数g则返回所有的匹配例子:
 var regx=/user/d/g;
 var str=“user13userddduser345”;
 var rs=str.match(regx);
 rs的值为:{user1,user3}
 2>search(expr),返回字符串中与expr相匹配的第一个匹配的index值。例子:
 var regx=/user/d/g;
 var str=“user13userddduser345”;
 var rs=str.search(regx);
 rs的值为:0
 3>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
 4>split(expr),将字符串以匹配expr的部分做分割,返回一个数组,而且表达式是否附加参数g都没有关系,结果是一样的。例子:
 var regx=/user/d/g;
 var str=“user13userddduser345”;
 var rs=str.split(regx);
 rs的值为:{3userddd,45}
 4,表达式相关属性 1)表达式相关属性,是指和表达式相关的属性,如下面的形式:var regx=/myexpr/;
 var rs=regx.exec(str);
 其中,和表达式自身regx相关的属性有两个,和表达式匹配结果rs相关的属性有三个,下面将逐一介绍。
 2)和表达式自身相关的两个属性:
 (编辑:南平站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |