使用javascript从url获取第二个路径元素

时间:2013-03-15 15:07:22

标签: javascript regex

如何执行以下操作?

我有以下网址

http://www.example.com/example/test/search

如何使用javascript从网址获取“测试”?

我想要一个我称之为q = getUrlVars()的函数 当我做q [1]时,它应该从网址给我“测试”(或第二次斜线后的参数)。

我是javascript的新手。我知道正则表达式是开始的方式,但我不知道如何使用它来获得我需要的东西。谢谢!

2 个答案:

答案 0 :(得分:7)

这里不需要正则表达式。这应该可以解决问题:

使用当前网址时

var path = window.location.pathname.split("/");
// Use path[2] to get 'test'

使用任何url作为字符串时:

var strUrl = "http://www.example.com/example/test/search";
var path = strUrl.replace(/^https?:\/\//, '').split('/');
// Use path[2] to get 'test'

请注意,path将是一个从零开始的Array,因此您可以假设path[1]可以使用path[0]。但是,在这种情况下,.split()将返回{{1}}的第一个结果,即空字符串。

答案 1 :(得分:1)

试试URI.js。特别是,segment()方法应该能满足您的需求。