从基于当前网页的 URL 获取整数 (ID #)
Obtaining Integer/s (ID #) from a URL based on current webpage
im正在寻找一种从多个URL获取一系列整数的方法。
例。
https://www.mywebsite.com/test/systems/121562/data
https://www.mywebsite.com/test/admin/sites/121562
https://www.mywebsite.com/test/admin/site_activations/121562
https://www.mywebsite.com/test/internaladmin/sites/show/121562/reports
现在,id (121562) 可能会根据用户而更改。除了并不总是相同数量的字符外,它的长度可以是 2 到 6 位。
我需要能够根据当前 URL 通过以下代码获取此 ID 号。
我下面的代码在这里是,它将确定 url 是否在 ID 之前有部分。
var A = (tab.url.indexOf('systems/') > -1);
var B = (tab.url.indexOf('sites/') > -1);
var C = (tab.url.indexOf('site_activations/') > -1);
var D = (tab.url.indexOf('sites/show/') > -1);
var idcode = Unsure code to pull integers from URL;
if( (A && !B) || (B && !A) ) {
chrome.tabs.create({
url: "http://www.mywebsite.com/prod?id=" + idcode,
})
} else {
alert("Do Something");
}
if( (C && !D) || (D && !C) ) {
chrome.tabs.create({
url: "http://www.mywebsite.com/prod?id=" + idcode,
})
} else {
alert("Do Something");
}
任何想法或建议将不胜感激。此代码适用于谷歌浏览器小部件。
如果 URL 中没有任何其他数字,则可以使用简单的正则表达式来获取:
var id = url.match(/([0-9]+)/)[1]
请看这个例子:http://jsfiddle.net/vVL37/
如果您确定 url 将始终遵循以下格式之一(如代码所示):
<something>/systems/:id
<something>/sites/:id
<something>/site_activations/:id
<something>/sites/show/:id
然后下面的正则表达式将为您提取 2-6 位 id
var idcode = /(?:systems|sites|site_activations|sites'/show)'/('d{2,6})/.exec(tab.url)[1]
如果还有其他可能性,那么我们需要更多信息来调整模式。
相关文章:
- 如何将HTML id分配给元素,以及如何将JavaScript应用于元素
- difference between '$(<%= DDL.ID %>) & $('
- 使用Javascript获取所选选项ID
- 根据id将json数组组合为一个json数组
- 是否有一个JS/jQuery函数可以获取某个类的每个元素的ID
- 如何使用js将SNAPSHOT内部版本号转换为3位数的整数
- 对id以某个字符串开头的元素进行计数
- 检测个位数整数时正在转换毫秒
- 如果元素's的ID以数字开头
- Ionic从JSON数据中获取整数ID
- 从基于当前网页的 URL 获取整数 (ID #)
- 获取 Javascript 中尚未使用的较低整数 id
- 获取整数数组中的第一个最小可用整数键/ID
- 角度/ ID + 整数
- 对于以整数开头的id,无法识别的表达式出现错误
- 如何分配或附加一个唯一的ID在javascript与行整数从html
- RegEx在javascript:搜索ID与排除一些整数
- 如何设置ngOptions的默认值,当options是对象时,default是一个整数ID
- Jquery值整数与id通过循环
- eval()所期望的Id、字符串或整数