我有这个字符串:
$string='My String [{Text_001}] My String [{Text_002}] ';
我想用$ something替换preg_replace [{something}](例如:[{Text_001}] - > $ Text_001)。
我的preg_replace中有错误:
$string = preg_replace('/([{.+?)+(}])/i', "$1", $string);
答案 0 :(得分:0)
\[
and {
have a special meaning in PCRE(加上你的regexp格式不正确)。逃避他们:
$string = preg_replace('/(\\[\\{(.+?)\\}\\])/i', "$1", $string);
答案 1 :(得分:0)
$string = preg_replace('~\[\{(.+?)\}\]~', "\$$1", $string);
# My String $Text_001 My String $Text_002
答案 2 :(得分:0)
使用:
<?php
$string='My String [{Text_001}] My String [{Text_002}] ';
$string = preg_replace("~".preg_quote('[{')."(.*?)".preg_quote('}]')."~","something", $string);
echo $string;
?>
将[{something}]
替换为something
之后的输出:
My String something My String something