Javascript jQuery获取URL的最后一部分

Javascript jQuery获取URL的最后一部分,javascript,jquery,html,url,get,regex,Javascript,Jquery,Html,Url,Get,Regex,我有一系列的页面,我需要得到一个按钮的特定代码。 我想用jQuery将url中的代码放入一个变量中 示例URL是www.example.com/folder/code/12345/ 我想获取名为(siteCode)的变量中的数字部分 提前感谢您的回答 jquery/伪代码: var siteCode; // start function function imageCode(){ siteCode // equals number part of URL $('.butto

我有一系列的页面,我需要得到一个按钮的特定代码。 我想用jQuery将url中的代码放入一个变量中

示例URL是www.example.com/folder/code/12345/

我想获取名为(siteCode)的变量中的数字部分

提前感谢您的回答

jquery/伪代码:

var siteCode;

// start function
function imageCode(){
     siteCode // equals number part of URL
     $('.button').attr('src', 'http:www.example.com/images/'+siteCode+'.jpg');
}
您可以使用split

我建议:

var URI = 'www.example.com/folder/code/12345/',
    parts = URI.split('/'),
    lastPart = parts.pop() == '' ? parts[parts.length - 1] : parts.pop();

.

您可以使用以下代码获取url的最后一部分:

var value = url.substring(url.lastIndexOf('/') + 1);
也可以尝试使用


有一种最好的方法可以获取URL的最后一部分,如下所示,这通常已在实际实现中使用

在之前给出的答案中,存在一些漏洞:

1.考虑如果有一个URL,比如代码> www.Simult/com /文件夹/代码/ 12345 < /代码>(没有'/'向前斜线),那么上面的代码就不会像预期那样工作了。 <> P> 2.考虑文件夹层次结构是否像<代码> >示例.com /文件夹/子文件夹/子文件夹/代码/ 12345 < /代码>

$(function () {
     siteCode = getLastPartOfUrl('www.example.com/folder/code/12345/');
});

var getLastPartOfUrl =function($url) {
    var url = $url;
    var urlsplit = url.split("/");
    var lastpart = urlsplit[urlsplit.length-1];
    if(lastpart==='')
    {
        lastpart = urlsplit[urlsplit.length-2];
    }
    return lastpart;
}

您可能会被愚弄,意识到
lastIndexOf('/')
作为URL/字符串的最后一个字符出现?使用
.pop()
会造成混乱,因为它具有破坏性,并且会更改
部分[]
数组。如果URI没有尾随斜杠,则返回“12345”失败,而是返回“code”。使用这个版本更直接:
lastPart=parts[parts.length-1]!=''?零件[零件.长度-1]:零件[零件.长度-2]
var url = "www.example.com/folder/code/12345";
  var checkExt = /\d$/i.test(url);
  if (checkExt) {
      alert("Yup its a numeric");
  } else {
      alert("Nope");
  }
$(function () {
     siteCode = getLastPartOfUrl('www.example.com/folder/code/12345/');
});

var getLastPartOfUrl =function($url) {
    var url = $url;
    var urlsplit = url.split("/");
    var lastpart = urlsplit[urlsplit.length-1];
    if(lastpart==='')
    {
        lastpart = urlsplit[urlsplit.length-2];
    }
    return lastpart;
}