如何让 preg_replace 使用 file_get_contents() 替换 html 中的双括号定界符?
How do I get preg_replace to replace double braced delimiters in html using file_get_contents()?
我可以使用 preg_replace 函数来查找并仅替换内部大括号分隔符。例如:下面的脚本将 { FIELD: date }
替换为 "12/12/2015"
但保留了外括号。
我试过转义外括号无济于事。请帮忙!
$myFileToCopy = file_get_contents("http://localhost/templatemaker/masterTemplates/".$object['fileName'].$object['fileExtension']);
$myFileToCopy = preg_replace("{{ FIELD: date }}", "12/12/2015", $myFileToCopy);
根据您的示例,此处不需要正则表达式,因此 str_replace
、http://php.net/str_replace 就足够了。
$myFileToCopy = file_get_contents("http://localhost/templatemaker/masterTemplates/".$object['fileName'].$object['fileExtension']);
$myFileToCopy = str_replace("{{ FIELD: date }}", "12/12/2015", $myFileToCopy);
如果你想用正则表达式来做,你可以试试,
$myFileToCopy = file_get_contents("http://localhost/templatemaker/masterTemplates/".$object['fileName'].$object['fileExtension']);
$myFileToCopy = preg_replace("~\{\{ FIELD: date \}\}~", "12/12/2015", $myFileToCopy);
注意 ~
,它们是定界符 http://php.net/manual/en/regexp.reference.delimiters.php,它让 PHP 知道表达式的开始和结束位置。
我可以使用 preg_replace 函数来查找并仅替换内部大括号分隔符。例如:下面的脚本将 { FIELD: date }
替换为 "12/12/2015"
但保留了外括号。
我试过转义外括号无济于事。请帮忙!
$myFileToCopy = file_get_contents("http://localhost/templatemaker/masterTemplates/".$object['fileName'].$object['fileExtension']);
$myFileToCopy = preg_replace("{{ FIELD: date }}", "12/12/2015", $myFileToCopy);
根据您的示例,此处不需要正则表达式,因此 str_replace
、http://php.net/str_replace 就足够了。
$myFileToCopy = file_get_contents("http://localhost/templatemaker/masterTemplates/".$object['fileName'].$object['fileExtension']);
$myFileToCopy = str_replace("{{ FIELD: date }}", "12/12/2015", $myFileToCopy);
如果你想用正则表达式来做,你可以试试,
$myFileToCopy = file_get_contents("http://localhost/templatemaker/masterTemplates/".$object['fileName'].$object['fileExtension']);
$myFileToCopy = preg_replace("~\{\{ FIELD: date \}\}~", "12/12/2015", $myFileToCopy);
注意 ~
,它们是定界符 http://php.net/manual/en/regexp.reference.delimiters.php,它让 PHP 知道表达式的开始和结束位置。