正则表达式将URL最后一部分与JavaScript匹配

时间:2012-02-29 07:46:58

标签: javascript regex

我有一些网址,我喜欢抓住网址的最后部分。

我的网址采用

的形式
http://www.my-site.dch/wp-content/uploads/2012/02/Tulips.jpg
http://www.my-site.dch/wp-content/uploads/2012/02/Tulips-150x200.jpg
http://www.my-site.dch/wp-content/uploads/2012/02/Tulips-500x350.jpg

我想要捕捉的是/郁金香....... jpg

我试过但没有运气

\/.*(-\d+x\d+)\.(jp(e)?g|png|gif)

有什么好主意吗?

5 个答案:

答案 0 :(得分:25)

查看lastIndexOf方法:

var index = url.lastIndexOf("/");
var fileName = url.substr(index)

答案 1 :(得分:11)

以下正则表达式将起作用:

/[^\/]+$/

答案 2 :(得分:3)

使用此正则表达式: -

^((http[s]?|ftp):\/)?\/?([^:\/\s]+)((\/\w+)*\/)([\w\-\.]+[^#?\s]+)(.*)?(#[\w\-]+)?$

使用$6

获取文件名

答案 3 :(得分:1)

.*/(.*)使用这种模式并获得组1.我会猜测 .*是一个贪婪的正则表达式,所以它会匹配,直到最后斜杠。之后,第1组将是最后一个字符(你需要的)

答案 4 :(得分:1)

如果您确定所有图像都是jpg:

/.\/\S+\.jpg/

否则,更多属:

/.\/\S+\.\w{2,3}/

那是:

. any char
\/ the slash before the file name
\S+ any non blank char to match the file name (at least one)
\. the file extension separator
jpg or \w{3,4} the file extension