如何使用JQuery在最后一个/分隔符之前提取URL中的最后一个值

时间:2016-05-02 09:38:14

标签: javascript jquery

我有这个网址:

http://test.com/en/country/city

我使用 lastIndexOf 获取“城市”但我想获得“国家”

window.location.href.substring(window.location.href.lastIndexOf('/') + 1);

是否可以使用 lasIndexOf ,或者此案例还有其他功能?

提前谢谢!

6 个答案:

答案 0 :(得分:3)

您可以按/分割您的网址并获取所需的元素(首先删除http://部分):



var str = 'http://test.com/en/country/city';

str = str.replace('http://', '');

var parts = str.split('/');
console.log(parts);

alert(parts[2]+', '+parts[3]);




答案 1 :(得分:1)

尝试:

var  fragment = "http://test.com/en/country/city";
var array_fragment = fragment.split('/');
var city = array_fragment[array_fragment.length - 1]
var country = array_fragment[array_fragment.length - 2]
alert(country)

答案 2 :(得分:1)

你可以这样做:

var url = "http://test.com/en/country/city"
var urlParts = url.split("/")
urlParts[urlParts.length - 1] (which would equal to "city")
urlParts[urlParts.length - 2] (which would equal to "country")

基本上在每次出现"/"时拆分并从返回的数组中选择正确的项目。

答案 3 :(得分:1)

使用split函数获取倒数第二个值。

试试这个

var url='http://test.com/en/country/city';

var splitArray=url.split('/');

alert(splitArray[splitArray.length-2]);

答案 4 :(得分:1)

  

这与lastIndexOf有效吗?

是的,有可能。

让我们说

x="http://test.com/en/country/city"

我们获得了最后/

的位置
y=x.lastIndexOf("/");//26

我们获得了第二个/

的位置
z=x.lastIndexOf("/",y-1);//18

要提取国家/地区,我们现在使用substring,如下所示

x.substring(z+1,y)//country

答案 5 :(得分:0)

尝试这样的事情。

var url = window.location.href;
var urlArray = url.split("/"); 

urlArray[urlArray.length-1] //City
urlArray[urlArray.length-2] //Country