Thanks!  Works like a charm!

I am the very lowest of newbies when it comes to regex
and working through your solutions has been very
educational.  I have one question about something I
couldn't figure out: 

#<h[1-9]>(.*)</h[1-9]>#Uie
`<h([1-6])>.*?</h\1)>`sie
What is the purpose of the back-ticks and the '#'? 
What are 'Uie' and  'sie'?

Thanks again!
Kathleen

-----Original Message-----
From: Fabrice Lezoray [mailto:[EMAIL PROTECTED] 
Sent: Sunday, August 01, 2004 2:52 PM
To: [EMAIL PROTECTED]
Subject: [PHP] Re: regex help needed 

hi

M. Sokolewicz a écrit :
> You could try something like:
> $return = preg_replace('#<h[1-9]>(.*)</h[1-9]>#Uie',
'str_replace("<br 
> />", "", "$1")');
> 
> 
> - Tul
> 
> Kathleen Ballard wrote:
> 
>> Sorry,
>> Here is the code I am using to match the <h*> tags:
>>
>> <h([1-9]){1}>.*</h([1-9]){1}>
I think this mask is better :
`<h([1-6])>.*?</h\1)>`sie


>>
>> I have removed all the NL and CR chars from the
string
>> I am matching to make things easier.  Also, I have
run
>> tidy on the code so the tags are all uniform.
>>
>> The above string seems to match the tag well now,
but
>> I still need to remove the br tags from the tag
>> contents (.*).
To remove the <br /> tags, you need to call
preg_replace_callback() :

<?php
$str = '<h1>hi <br /> ..</h1> bla bla <h5> .... <br />
..</h5> ...<br />';
function cbk_br($match) {
        return '<h' . $match[1] . '>' . str_replace('<br />',
'', $match[2]) . 
'</h' . $match[1] . '>';
}
$return =
preg_replace_callback('`<h([1-6])>(.*?)</h\1>`si',
'cbk_br', 
$str);
echo $return;
?>

>>
>> The strings I will be matching are html formatted
>> text.  Sample <h*> tags with content are below:
>>
>> <h4>Ex-Secretary Mickey Mouse <br />Loses Mass.
>> Primary</h4>
>>
>> <h4>Ex-Secretary Mickey Mouse <br />Loses Mass.
>> Primary <br /> Wins New Jersey</h4>
>>
>> <h4>Ex-Secretary Reich Loses Mass. Primary</h4>
>>
>> Again, any help is appreciated.
>> Kathleen


-- 
Fabrice Lezoray
http://classes.scriptsphp.fr

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to