我创建了一个模板系统来替换所有以'%%'开头和结尾的变量。问题是,预浸更换有时代替超过它应该,这里有一个例子:preg_replace是否可以替换两个符号之间的所有内容?
<?php
$str = "100% text %everythingheregone% after text";
$repl = "test";
$patt = "/\%([^\]]+)\%/";
$res = preg_replace($patt, "", $str);
echo $res;
?>
这个输出“100文本之后”,它应该输出“100%文本文本之后”。有没有解决这个问题的方法?这非常糟糕,因为如果文档中存在CSS规则,则会使用百分号,并最终替换所有文档。
太好了!你注意到关于单词字符的观点是不可思议的。我想了一会儿,然后认定情况可能并非如此。 – Unihedron 2014-09-21 15:57:28