Javascript正则表达式将匹配作为数组

时间:2013-10-05 23:58:32

标签: javascript regex

我有以下代码段:

hash = window.location.hash;
regex = /^#id=\d{1,10}&session=(.+)$/ig;
 if (regex.test(hash)) {
  stepTo4(0, id, "start", session);
  break;    
 }

如何在方法参数中\d{1,10}当前所在的位置获取id的匹配值,与session相同? 我试过了:

var m = hash.match(regex);
console.log(m);
stepTo4(0, m[0], "start", m[1]);

m[0]只包含与hash变量相同的值,m[1]未定义。

1 个答案:

答案 0 :(得分:0)

您需要在表达式中捕获它:

hash = window.location.hash;
regex = /^#id=(\d{1,10})&session=(.+)$/ig;

使用它:

m = hash.match(regex)
id = m[1]