很长很短的故事,我基本上试图使用正则表达式(或者甚至是字符串替换)来改变
@import url('narf.css');
到
<?php include('narf.css'); ?>
到目前为止,我已经提出了这个问题,但它没有关闭PHP标记....
$var = str_replace('@import url', '<?php include', $var);
除此之外,我有点卡住了。我在正则表达式语法上是可怕的,我尝试或试图查找的所有内容都让我走上了死路。
任何帮助都将超过赞赏。
答案 0 :(得分:2)
$var = preg_replace('/@import url\(([^)]+)\);/', '<?php include $1; ?>', $var);
要打破它:
@import url\(
- 字面上匹配 @import url(。([^)]+)
- 将括号内的所有内容捕获到第一个反向引用中。\);
- 字面上匹配); 。如果你在某处有一些空白,你也必须考虑到这一点......