正则表达式从属性中查找图像src / path

时间:2013-03-14 11:18:36

标签: javascript jquery regex find

如果我的HTML是

<div style="background-image: url(http://domain.com/randompath/random4509324041123213.jpg);"></div>

我得到的样式属性如..

var img_src = $('div').css('background-image');

所以输出是

url("http://domain.com/randompath/random4509324041123213.jpg")

任何正则表达式或一些基本的东西找到图像src /路径100%?像

http://domain.com/randompath/random4509324041123213.jpg

100%我的意思是跨浏览器,它应该100%工作

我不确定var img_src = $('div').css('background-image');的输出在所有浏览器中都有这样的模式,如果“是”那么我可以.replace()函数

游乐场:http://jsbin.com/apalat/1/edit

2 个答案:

答案 0 :(得分:3)

试试这个:

$("code").html(img_src.slice(5, -2));

CHECKOUT FIDDLE

更新

For 'chrome'因为Chrome不会添加'"' quotes:

var img_src = $('div').css('background-image');

$("code").html(img_src.slice(5, -2));

if (navigator.userAgent.toLowerCase().indexOf('chrome') >= 0) {
   $("code").html(img_src.slice(4, -1));
}

UPDATED FIDDLE

答案 1 :(得分:1)

不需要正则表达式,只需剪切字符串......

http://jsfiddle.net/BHcsQ/2/

var s = 'url("http://domain.com/randompath/random4509324041123213.jpg")';
var s_sub = s.substring(5, s.length-2);

alert(s_sub);