Re: highlighting searchterms as bold text
| From: | Puiu Hrenciuc | Date: | Thu, 20 Sep 2007 11:56:04 +0000 |
| Subject: | Re: highlighting searchterms as bold text | ||
| References: | 1 2 3 4 5 6 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-262281@lists.php.net to get a copy of this message | ||
Sorry, I didn't read d) right (NOT Methyl),
here is teh new regex :
/(\b#SearchTermHere#(\w+)?)/i
The code sample is the same, replace regex, of course .
Output should be :
<b>ethyl</b> Lorem <b>Ethyl</b> ipsum MeThYl dolor <b>Ethylene</b> sit
Cheers
Puiu Hrenciuc wrote:
Hi, Here's what you need: RegEx: /((\w+)?#SearchTermHere#(\w+)?)/i Of course, replace your #SearchTermHere# with what you need, i.e. /((\w+)?ethyl(\w+)?)/i Code sample: $_textToHighlight='ethyl Lorem Ethyl ipsum MeThYl dolor Ethylene sit'; $_search='/((\w+)?ethyl(\w+)?)/i'; $_replace='<b>\\1</b>'; $_highlightedText=preg_replace($_search,$_replace,$_textToHighlight); This should output: <b>ethyl</b> Lorem <b>Ethyl</b> ipsum <b>MeThYl</b> dolor <b>Ethylene</b> sit Hope it helps, PuYa C.R.Vegelin wrote:----- Original Message ----- From: "Deniz Dizman (BST UGB)" <DENIZ.DIZMAN@fortis.com.tr> To: "C.R.Vegelin" <cr.vegelin@hetnet.nl>; "php-general@lists.php.nt" <php-general@lists.php.net> Sent: Thursday, September 20, 2007 11:29 AM Subject: RE: [PHP] highlighting searchterms as bold text thats odd because the regex passes when I test it with this online tool: http://samuelfullman.com/team/php/tools/regular_expression_tester_p2.php -- dd-----Original Message----- From: C.R.Vegelin [mailto:cr.vegelin@hetnet.nl] Sent: Thursday, September 20, 2007 1:31 PM To: php-general@lists.php.nt Subject: [PHP] highlighting searchterms as bold text Hi everyone, I want to highlight (bold) searchterms in text. For example, for all words starting with "ethyl": a) replace "ethyl" by "<b>ethyl</b>" b) replace "Ethyl" by "<b>Ethyl</b>" c) replace "ethylene" by "<b>ethylene</b>" d) but not "methyl" by "<b>methyl</b>" Now I use: $patterns[0] = "/ethyl/"; $replacements[0] = "<b>ethyl</b>"; $text = preg_replace($patterns, $replacements, $text); This works for a) and c), but not for b) and d). Any idea how to do this ? TIA, Cor-----Original Message----- From: C.R.Vegelin [mailto:cr.vegelin@hetnet.nl] Sent: Thursday, September 20, 2007 1:59 PM To: Deniz Dizman (BST UGB); php-general@lists.php.nt Subject: Re: [PHP] highlighting searchterms as bold text ----- Original Message ----- From: "Deniz Dizman (BST UGB)" <DENIZ.DIZMAN@fortis.com.tr> To: "C.R.Vegelin" <cr.vegelin@hetnet.nl>; "php-general@lists.php.nt" <php-general@lists.php.net> Sent: Thursday, September 20, 2007 10:38 AM Subject: RE: [PHP] highlighting searchterms as bold text try /^ethyl/i what you want is ignore case and pattern begins with -- ddThanks Deniz, I tried pattern /^ethyl/i but this does not highlight anything. I also tried pattern /ethyl/i and this highlights all, but also methyl ... Any suggestion ? CorHi Deniz, I tried the referred regex tool as well, and I get Bad Result for /^ethyl/i and Good Result for /ethyl/i Cor