Ok, this works.

Just one more thing,

How can I get the return in the same case as it was originally?

Ie if I have $string = "Forward" , and $search = "for", I want
<span....>Forward</span>, not <span...>forward</span>.

Thanks

David Russell
IT Support Manager
Barloworld Optimus (Pty) Ltd
Tel: +2711 444-7250 
Fax: +2711 444-7256
e-mail: [EMAIL PROTECTED]
web: www.BarloworldOptimus.com

-----Original Message-----
From: Justin French [mailto:justin@;indent.com.au] 
Sent: 04 November 2002 12:49 PM
To: David Russell
Subject: Re: [PHP] Battling with highlighting search criteria


Yeap, you need a regexp...

$result = eregi_replace($search,"<span
class=\"foo\">$search</span>",$result);

This will be a little slower that str_replace, but it's the easiest way
if you need case insensitivity...


Justin


on 04/11/02 7:27 PM, David Russell ([EMAIL PROTECTED]) wrote:

> Hmmm, old method:
> 
> Find starting point of substring, and do a substr replace (not really
> elegant)
> 
> But how can I make your method case insensitive? I presume ereg/preg 
> replaces. My regexp knowledge is non-existent, however!!
> 
> Cheers
> 
> David Russell
> IT Support Manager
> Barloworld Optimus (Pty) Ltd
> Tel: +2711 444-7250
> Fax: +2711 444-7256
> e-mail: [EMAIL PROTECTED]
> web: www.BarloworldOptimus.com
> 
> -----Original Message-----
> From: Justin French [mailto:justin@;indent.com.au]
> Sent: 04 November 2002 12:27 PM
> To: David Russell; [EMAIL PROTECTED]
> Subject: Re: [PHP] Battling with highlighting search criteria
> 
> 
> how are you doing it for only the FIRST???
> 
> Anyhoo, a simple string replace should do it... I'd do this:
> 
> $result = str_replace($search,"<span 
> class=\"highlight\">{$search}</span>",$result);
> 
> Justin
> 
> 
> on 04/11/02 6:27 PM, David Russell ([EMAIL PROTECTED]) 
> wrote:
> 
>> Hi there,
>> 
>> My brain has just gone very fuzzy...
>> 
>> I have a search string ($search) and a result ($result). I need to 
>> highlight every occurance of $search in $result.
>> 
>> I know that it means that I need to change (for example)
>> 
>> $result = "This is a test, isn't it?"
>> $search = "is"
>> 
>> Into
>> 
>> $result = "th<span class="highlight">is</span> <span 
>> class="highlight">is</span> a test, <span 
>> class="highlight">is</span>'nt it"
>> 
>> Now I can easily see how to change the FIRST occurrence of the word, 
>> but how can I change every occurance?
>> 
>> Thanks
>> 
>> 
>> 
>> David Russell
>> IT Support Manager
>> Barloworld Optimus (Pty) Ltd
>> Tel: +2711 444-7250
>> Fax: +2711 444-7256
>> e-mail: [EMAIL PROTECTED]
>> web: www.BarloworldOptimus.com
>> 
> 

Attachment: smime.p7s
Description: application/pkcs7-signature

Reply via email to