我想在css文件上运行并替换一些值。我希望更换只能在支架内进行。
例如假设我们有下一个css:
.redColor{color:red;padding-right:45px;/*etc....*/}
我想用蓝色替换所有的红色值。
我试着使用下一个代码:
preg_replace("/{(.*)red(.*)}/","blue",$cssString)
但是结果是:.redcolorblue
我希望它只替换红色,如果它在大括号内,并避免它周围的图案。。。预期结果应该是:
.redColor{color:blue ;padding-right:45px;/*etc....*/}
这只是我尝试做的一个例子,我想更改css文件本身,并更改其中的许多值
一些澄清我想在CSS文件中进行替换,所以我将整个文件加载到一个变量中并进行替换,因此只替换一个值的解决方案不是我所寻找的
preg_replace('/('{.*?)red(.*?'})/s', '$1blue$2', $cssString);
试试这个:
preg_replace("/({.*)red(.*})/","${1}blue${2}",$cssString);
通过使用括号,匹配字符串被保存,并且可以在替换字符串中被引用为$1
。
中的更多详细信息http://php.net/preg_replace