php替换字符串不在已定义字符之前
我需要替换子字符串,但不只是“=”在它们的右边。 例如,将“=”之前的“foo”net替换为“bar”(忽略空白) 你知道有什么简单的预防措施吗? 我试过类似的东西php替换字符串不在已定义字符之前,php,regex,preg-replace,Php,Regex,Preg Replace,我需要替换子字符串,但不只是“=”在它们的右边。 例如,将“=”之前的“foo”net替换为“bar”(忽略空白) 你知道有什么简单的预防措施吗? 我试过类似的东西 /(foo)([\S^=]*)/x' etc 但是它匹配所有的“foo”=>bar=bar这也可以使用分解来完成: $replacement = "bar"; $parts = explode('=', $string); $parts[0] = $eplacement; $string = implode('=', $parts
/(foo)([\S^=]*)/x' etc
但是它匹配所有的“foo”=>bar=bar这也可以使用分解来完成:
$replacement = "bar";
$parts = explode('=', $string);
$parts[0] = $eplacement;
$string = implode('=', $parts);
尝试此操作。替换为$1bar
。请参阅演示
?如果只有两个成员用=
分隔,则可以使用分解
。
$replacement = "bar";
$parts = explode('=', $string);
$parts[0] = $eplacement;
$string = implode('=', $parts);
\s*(=?)\s*foo(?!\s*=)