码迷,mamicode.com
首页 > 其他好文 > 详细

正则表达式中圆括号的用法

时间:2015-07-26 22:22:17      阅读:128      评论:0      收藏:0      [点我收藏+]

标签:

 

var rgExp = /(^\D*[0-9])/; 
var str = "this is fun 01 stuff";
var resu = str.match(rgExp);
document.writeln(resu);

结果为: this is fun 0,this is fun 0

如果使用圆括号的模式在匹配完成后,会记住这一匹配。被记住的值保存在结果数组中,此例中的结果中间有一个逗号,表明它们是数组的两项。第一个结果是匹配,第二个来自圆括号模式保存的值。如果不用圆括号括着整个模式,而只括其中一部分的话,比如/(^\D*)[0-9]/,结果就是下面的例子。

var rgExp = /(^\D*)[0-9]/; 
// or var rgExp = /^(\D*)[0-9]/;
var str = "this is fun 01 stuff";
var resu = str.match(rgExp);
document.writeln(resu);

结果为 : this is fun 0,this is fun

第一项是匹配的字符串,第二项是来自括号模式保存的值。

如果改成/(^\D*)([0-9])/,则结果会是三项,即 this is fun 0,this is fun ,0 

 

RegExp有一些特殊字符,被标记为$1,$2一直到$9,它们用于保存圆括号所找到的字串。括号模式匹配的值也可以使用,如:

var rgExp = /(\w*)-*(\w*)/;
var str = "java--script";
var resu = str.replace(rgExp,"$2_$1");
document.writeln(resu);

结果为: script_java

正则表达式中圆括号的用法

标签:

原文地址:http://www.cnblogs.com/lswit/p/4678778.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!