正则表达式之间替换文本

时间:2012-10-13 00:58:19

标签: php regex preg-replace

我有一个css文件,里面有我 url('PTN77F-webfont.eot') - 用于字体名称 和 @import url("layout.css");作为导入。

我需要在"PTN77F-webfont.eot"之前添加一些文字preg_replace以及"layout.css"之前的其他文字。这只是示例,它可以是任何文本。 基本上我需要在url('abc')内添加一些文本,在@import url("def")内添加另一个文本。

到目前为止我所做的是:

$new_file_content = preg_replace("/([^import]\s*\burl\s*\('|\")(.*)('|\"\))/i", '$1'.JURI::base().'$2$3', $new_file_content);

适用于url('PTN77F-webfont.eot'),但我的变量也添加到@import url("layout.css")内,这是不行的。

期待您的帮助。

1 个答案:

答案 0 :(得分:0)

对于第一个,您可以使用limit parameter of preg_replace

$new_file_content = preg_replace("/([^import]\s*\burl\s*\('|\")(.*)('|\"\))/i",
'$1'.JURI::base().'$2$3', $new_file_content,1);