$('.icon-displayer').css('background-image');
console.log(a)
给我的价值为url("http://localhost:8080/myApp/icons/xing-square.png")
从这个字符串我想只提取文件名,即 xing-suare.png 我该怎么做?
我试过
var url= $('.icon-displayer').css('background-image');
var filename = url.split('/').pop()
无效
答案 0 :(得分:3)
Javascript pop
方法从数组中删除最后一个元素。使用split
然后获取数组的最后位置。
var url= $('.balaIconPicker-icon-displayer').css('background-image');
var array = url.split('/');
var filename = array[array.length - 1];
答案 1 :(得分:0)
如果没有参数,那么卢卡斯的答案是可以的,这是你应该使用的答案。但是如果最后的字符串类似于“test.php?id = 125”,那么你也会得到“?id = 125”,这可能不是你想要的。正则表达式可以帮助您避免这种情况:
var url = "http://www.test.com/directory/test.php?id=128",
cleanRegexp = /\/([^\.\/]+\.[a-z]{0,3})[^\/]*$/;
var result = cleanRegexp.exec(url);
window.alert(result[1]);
正则表达式找到最后一个斜杠,然后查找任何不是斜线或点的东西,然后抓取点和扩展名,在任何特殊字符之前完成。
以下是Fiddle