RegExp. Переформатировать текст <DIV>'ов

  • Автор темы Johan Lee
  • Дата начала

Johan Lee

Guest
RegExp. Переформатировать текст <DIV>'ов

PHP 5.0.3
Apache 1.3.27
Win XP, v5.1, Service Pack 2


Содержимое переменной $contents:


Код:
<P>Text. Text text text text.

<DIV class=off>And a one.

<P>And a two.

<P>And a three.</DIV>

<P>Text text text...

Необходимо во всех строчках <DIV>'а <P> заменить на <BR><BR>.


С последней строчкой <DIV>'a более-менее ясно:


PHP:
while(
      ereg("(<P>)([[:alnum:]]*[[:punct:]]*[[:blank:]]*)(</DIV>)",
           $contents,
           $regs
           )
      ) 
    {
        $found = $regs[0];
        $regs[0] = str_replace("<P>", "<BR><BR>", $regs[0]);
        $contents = str_replace($found, $regs[0], $contents);
    };

Как заменить <P> во второй строчке <DIV>'а? Предлагать любые варианты. С использованием вышеприведенного кусочка php, без него, просто алгоритмы и идеи - все подойдет.
 

Necromant

Новичок
ничего не понимаю :)
перед , твоей заменой
PHP:
preg_replace("/\<div(.*?)\>(.*?)\<\/div\>/si", "<br>\\2<br>", $str);
 
Сверху