之間得到URL中的最後一個單詞如何獲取URL和/和/之間的URL中的最後一個單詞?正則表達式在/和/
例如:
http://mywebsite.com/extractMe/test
http://mywebsite.com/extractMe
http://mywebsite.com/settings/extractMe/test
http://mywebsite.com/settings/extractMe
在這裏,我想從URL獲得extractMe
。
之間得到URL中的最後一個單詞如何獲取URL和/和/之間的URL中的最後一個單詞?正則表達式在/和/
例如:
http://mywebsite.com/extractMe/test
http://mywebsite.com/extractMe
http://mywebsite.com/settings/extractMe/test
http://mywebsite.com/settings/extractMe
在這裏,我想從URL獲得extractMe
。
如果URL是一致的,爲什麼不使用:
// Option 1
var url = "http://mywebsite.com/extractMe/test";
var extractedText = url.split("/")[3];
// Option 2
// If when a trailing slash is present you want to return "test", use this code
var url = "http://mywebsite.com/extractMe/test/";
var urlAry = url.split("/");
var extractedText = urlAry[urlAry.length - 2];
// Option 3
// If when a trailing slash is present you want to return "extractMe", use this:
var url = "http://mywebsite.com/extractMe/test/";
var urlAry = url.split("/");
var positionModifier = (url.charAt(url.length-1) == "/") ? 3 : 2;
var extractedText = urlAry[urlAry.length - positionModifier];
這裏的工作小提琴:http://jsfiddle.net/JamesHill/Arj9B/
這說明無論是像http://mywebsite.com/extractMe/test
和http://mywebsite.com/extractMe/
function processUrl(url)
{
var tk = url.split('/');
var n = tk.length;
return tk[n-2];
}
編輯URLS 。
正則表達式的方法:
var str = "http://example.com/extractMe/test";
var match = str.match(/\/([^\/]+)\/[^\/]+$/);
if (match) {
console.log(match[1]);
}
它的工作原理/或沒有它到底:)
var url = "http://mywebsite.com/extractMe/test/";
var m = url.match(/\/([^\/]+)[\/]?$/);
console.log(m[1]);
輸出: 測試,如果extractMe是
你怎麼知道的最後,倒數第二等等? – Cranio
@Cranio,你怎麼知道它不是?請閱讀我的答案。 '如果URL是一致的......' –
@Cranio,OP特別要求包裹在'/'中的最後一個單詞.. –