window.location.hash = this.href.replace(/.+\/([^\/]+)\/index.html/,'$1') + '|default';
请问这句话中的'$1'是什么含义,替换的结果$1变成了其他的值鸟。。。
代码出处在附件里面,是jqueryui提供的demo中的一段代码,在81行
window.location.hash = this.href.replace(/.+\/([^\/]+)\/index.html/,'$1') + '|default';
请问这句话中的'$1'是什么含义,替换的结果$1变成了其他的值鸟。。。
代码出处在附件里面,是jqueryui提供的demo中的一段代码,在81行
首先replace里的
/.+\/([^\/]+)\/index.html/
是一段正则
表示像
'任意字符' +'/'+'不是/的任意字符'+'\/index.html'的字符串
注意'不是/的任意字符'被用括号括了起来 在正则表达式匹配成功后
便可以引用括号括起来的片段了
$0表示全部匹配的字段 就是//里面的东西
$1表示从第一个左括号开始到与第一个左括号匹配的子匹配
也就是你这段代码的'不是/的任意字符'
$2表示从第二个左括号开始到与第二个左括号匹配的子匹配
依次类推