从 Css 属性背景 url 获取文件名

Get the file name from Css propery background url

本文关键字:获取 文件名 url 背景 Css 属性      更新时间:2023-09-26
$('.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()

没有工作

Javascript pop方法从数组中删除最后一个元素。使用 split 然后获取数组的最后一个位置。

var url= $('.balaIconPicker-icon-displayer').css('background-image');
var array = url.split('/');
var filename = array[array.length - 1];

如果没有参数,那么卢卡斯的答案是可以的,它是你应该使用的答案。但是,如果末尾的字符串类似于"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]);

正则表达式查找最后一个斜杠,然后查找不是斜杠或点的任何内容,然后抓取点和扩展名,在任何特殊字符之前完成。

这是小提琴