简单的问题,但我不太了解正则表达式......
http://foo.com/bar/image/abc.jpg
如何在javascript中使用正则表达式 abc ?
答案 0 :(得分:4)
'http://foo.com/bar/image/abc.jpg'.split('/').pop().split('.').shift();
答案 1 :(得分:3)
您可以使用: -
var url = 'http://foo.com/bar/image/abc.jpg'
var fileName = url.substring(url.lastIndexOf('/') + 1, url.lastIndexOf('.'));
这会给你“abc”。只需一行代码。 :)
答案 2 :(得分:2)
没有正则表达式:
var str = "http://foo.com/bar/image/abc.jpg"
str.split("/").slice(-1)[0].split(".")[0]
答案 3 :(得分:1)
var test = "http://foo.com/bar/image/abc.jpg";
var i = test.lastIndexOf("/");
var j = test.lastIndexOf(".");
var str = test.substring(i + 1, j);
document.body.innerHTML += "<p>" + str + "</p>";
答案 4 :(得分:1)
正则表达式版本:
var result = 'http://foo.com/bar/image/abc.jpg'.match(/[^\/]+(?=\.jpg$)/)[0];
对后代的解释:
match函数返回一个结果数组,但是在这里我确定只有1个结果导致我的模式被锚定到字符串的结尾,因此我选择了index [0]
正则表达式:
[^\/]+ all that is not a slash one or more times
(?=\.jpg$) is a lookahead that mean: followed by .jpg
$ stand for the end of the string