var reg = /((\?)(pn=[^&]*&)+(?!pn=))|(((\?|&)pn=[^&]*)+$)|(&pn=[^&]*)/g;
for (var i = 0; i < a.length; i++) {
alert(a[i].replace(reg, "$2"));
}
在replace方法立面替换成"$2"是什么意思?有什么作用?
校验表达式 用 $2代替了原来的表达式。
$2是指第2个小括号里的 表达式:
相当于是(((\?|&)pn=[^&]*)+$)|(&pn=[^&]*)是新的校验规则。追问
$2是指第2个小括号里的 表达式:
相当于是(((\?|&)pn=[^&]*)+$)|(&pn=[^&]*)是新的校验规则。追问
你的意思是指第二个小括号里面的内容替换成"$2" 还是应用第二个小括号里面的规则?
追答用第二个小括号里的规则
温馨提示:答案为网友推荐,仅供参考