kathyrani  

1.子正则表达式
形式:/(子正则表达式)/

例1:
var reg = /\w\w/
var str = 'helloword';
var result = reg.exec(str);

结果:he

例2:

var reg = /(\w)\w/

var str = 'helloword';

var result = reg.exec(str);

结果:he,h

结论:he是整个正则匹配的内容,h是第一个括号里的子正则表达式匹配的内容

 

2.反向引用

形式:/(子正则表达式)\1/   ----------- “\1”是等同于“第1个括号匹配的内容”

例1:

var reg = /(\w)\1/

var str = 'word';

var result = reg.exec(str);

结果:null

结论:这里的“\1”就叫做反向引用,它表示的是第一个括号内的字正则表达式匹配的内容。在上面的例子中,第一个括号里的(\w)匹配了w,因此“\1”就同样表示w了,在余下的字符串里自然找不到w了。

 

例2:

var reg = /(\w)\1/

var str = 'wwrd';

var result = reg.exec(str);

结果:ww,w

结论:与第二个例子对比就可以发现,“\1”是等同于“第1个括号匹配的内容”,而不是“第一个括号的内容”。

 

posted on 2012-07-10 15:12  kathyrani  阅读(289)  评论(0编辑  收藏  举报