有时候可能有这个需求:从一个图片的超长地址中,找到图片名和后缀名,例如,从下面的地址中,找到 “cn.png”:
plugins/UserCountry/images/flags/c123n.png
用 indexOf 配合substring 可以实现,但是有点麻烦,这里推荐一个正则表达式的方法
var test = /\/([^\/]*?\.png)/i;
var str = 'plugins/UserCountry/images/flags/cn.png';
var img = test.exec(str)[1];
alert(img);
封装成函数:
function getImg(url){
var test = /\/([^\/]*?\.png)/i;
var img = test.exec(url)[1];
return img;
}
当然,这个只能获取png,使用有局限,下面对它的正则进行稍微的修改,即可匹配更多图片格式,需要的可以自己继续添加:
function getImg(url){
var test = /\/([^\/]*?\.(jpg|gif|png|bmp))/i;
var img = test.exec(url)[1];
return img;
}