Re: preg_replace problem

From: Date: Sat, 13 Jun 2009 20:19:22 +0000
Subject: Re: preg_replace problem
References: 1 2  Groups: php.general 
Request: Send a blank email to php-general+get-294022@lists.php.net to get a copy of this message
Shawn McKenzie wrote:
Al wrote:
This preg_replace() should simply replace all "&" with "&amp;" unless the value is already "&amp;" But; if $value is simple a quote character ["] I get "&quote". e.g., "test" => &quote;test&quote; Search string and replace works as it should in Regex_Coach. echo $value.'<br />'; $value=preg_replace("%&(?!amp;)%i", "&amp;", $value); echo $value; I tried using \x26 for the "&" in the search string; didn't help. This seems too obvious to be a bug. Using php5.2.9 Al.......
Your code works for me, unless I'm misunderstanding the problem. With the following: $value = "&quote;test&quote;"; I get: &quote;test&quote;<br /> &amp;quote;test&amp;quote;
I may not have been very clear. Feed it just      "test"   with the quotes. You should get back, "test" the same as you gave it.   Instead, I get back &quote;test&quote;
Like wise, if I give it just a single quote ["] I get back [&quote;]

« previous php.general (#294022) next »