我试图获取一个路径名元素,在一个'键后面。例如,路径名,如果我有包含'/colour/red'
的路径,那么我希望能够搜索“颜色”'然后得到红色'
我试图获得' 31'来自'开始'路径名。 我试过了:
var url = 'http://myapp/html/live/index/start/31/sort/start_date'
if(/\/start\/([0-9]+)\//.test(url)) {
alert(RegExp.$1);
}
答案 0 :(得分:4)
您的正则表达式是正确的,但reged.test
仅返回boolean (true/false)
。您需要使用regex.exec
来获取匹配数组:
if (m = /\/start\/([0-9]+)\//.exec(url)) {
console.log(m[1]); // 31
}
如果您想将start
作为动态字符串传递,请使用RegExp
对象:
var key = "start";
var re = RegExp("/" + key + "/([0-9]+)/");
if (m = re.exec(url)) {
console.log(m[1]); // 31
}