2011-11-03 80 views

回答

3

末添加$所以你只得到最後一部分:

window.location.href.match(/[^/]+$/g); 
+0

這樣做;非常感謝!! – user815460

3

就個人而言,我儘量用簡單的字符串操作,方便的任務是這樣的。它使更多可讀的代碼(一個人不是很熟悉的正則表達式)。

var url = window.location.pathname; 
var filename = url.substring(url.lastIndexOf('/')+1); 

或者乾脆:

var filename = window.location.pathname.substring(window.location.pathname.lastIndexOf('/')+1); 

其他信息

這不是問題的東西那麼微不足道,但這種方法也具有更好的性能比正則表達式:http://jsperf.com/get-file-name

0

您可以使用.pop()獲取數組的最後一個元素;

alert(fn.pop()); 
1

如何: window.location.href.match(/\/([^/]+)$/)[1];

0

有一個jQuery插件,可以很容易地解析URL和他們的不同部分提供訪問。它所做的一件事就是返回文件名。下面是在GitHub上的插件:

https://github.com/allmarkedup/jQuery-URL-Parser

我會建議使用,避免重蹈覆轍。正則表達式是一個特別適用的編程領域。

+0

這似乎是矯枉過正從URL中提取文件名。 –

+0

如果你正在使用jQuery,並定期與網站合作,我認爲你節省的時間會超過缺點。 – Slavo

+0

我可以理解這個觀點,但OP甚至沒有標記jQuery。 –

相關問題