3

我已经在网上搜索了几天,但一直找不到我需要的东西。

我想要的是使用 javascript 正则表达式匹配 CSS 文件中的所有背景图像 url。

前任:

background:url('images/sprite-global.png'); // should return 'images/sprite-global.png'
background-image: url('images/sprite-global.png'); should also return 'images/sprite-global.png'
background:url( 'images/sprite-global.png' );// should return 'images/sprite-global.png' even if we have spaces.
background:url('http://mysite.com/css/images/sprite-global.png'); // should return 'http://mysite.com/css/images/sprite-global.png'

但是,它不应该返回任何东西:

{
display:none;
}

它看起来很简单,但到目前为止,我最好的结果是: url('images/sprite-global.png') 使用:

/url\(([^\)]+\)/i

有谁知道我可以使用哪种表达方式?

谢谢

雨果

4

1 回答 1

1

http://jsfiddle.net/2V5Gg/2/

/url\((.*?)\)/

我不确定您的要求是什么,因为url也可以使用双引号或不使用引号,或者您是否担心包含字符串“url”或括号的路径,但这至少适用于您的示例。与其尝试使用精确的正则表达式来处理修剪,不如使用$.trim.

于 2013-01-14T03:33:15.270 回答