首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

\一的用法

2013-10-11 
\1的用法function test17(){var r1/(.)\1/gvar str1baaaabbcvar arrwhile ((arr r1.exec(str1))

\1的用法

function test17()
{
var r1=/(.)\1/g;
var str1="baaaabbc";
var arr;
  while ((arr = r1.exec(str1)) != null)
{
window.alert(arr.index + "-" + arr.lastIndex + "\t" + arr);
}    
}
function test18()
{
var r1=/(.)\2/g;
var str1="baaabbbc";
var arr;
  while ((arr = r1.exec(str1)) != null)
{
window.alert(arr.index + "-" + arr.lastIndex + "\t" + arr);
}    
}

为何test17能够得到正确结果,而test18不行
[解决办法]
/(.)\1/g
中 \1 表示第一对圆括号中匹配的内容

/(.)\2/g
中 \2 表示第二对圆括号中匹配的内容,但是你并没有第二对圆括号

[解决办法]
\1是对获取的子匹配的引用。其中1表示第1个子匹配

/(.)\2/;中只有一个子匹配,你却要引用第2个子匹配,当然不对了

热点排行