Re: Help on pregreplace

From: Date: Tue, 18 Aug 2009 14:07:46 +0000
Subject: Re: Help on pregreplace
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-296919@lists.php.net to get a copy of this message
On Tue, 2009-08-18 at 16:00 +0200, Merlin Morgenstern wrote: > Hi there, > > I am highlighting keywords with the help of pregreplace. This works > great with one limitation. If the word that has to be replaced contains > a slash, preg throws an error. So far I could not find a fix. Can > someone help? > > Here is the code: > > > $pattern = "/\b($words)\b/is"; > $replace = '<span > style="background:#FF0000;color:#FCCCCC;">\\1</span>'; > return preg_replace($pattern,$replace,$str); > > Thank you in advance, > > Merlin > Well, a slash has a special meaning inside PHP strings, more so for double quoted strings. Are you correctly escaping the slash as a double slash so that it's not interpreted by the string as an escaped character, as you will need to as the preg_replace will be interpreting it as an escape sequence to match? Thanks, Ash http://www.ashleysheridan.co.uk

« previous php.general (#296919) next »