Регулярные выражения. Замена через один.

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

OlegFox

Новичок
Регулярные выражения. Замена через один.

Помогите составить регулярное выражение.
Есть такой код: <br>текст<br><br>текст<br>
Как можно сделать, чтобы первый <br> менялся на <p>, а второй на </p>
Заранее благодарю!
 
OlegFox,
Лучше не придумывать свои регулярные выражения для парсинга HTML/XML, а использовать какой-нибудь класс из PEAR или расширение PHP.
 
OlegFox, а ты как-то попробовал и у тебя не получилось?

b-d, твои глубокие мысли очень полезны.
 
заведи себе флаг (булева переменная) и при истине меняй на 1 значение потом меняй флаг на ложь и когда в след раз найдешь меняй на второе значение и флаг на true и все очень просто ....
 
Гониво это всё, так никогла не думайтe, тот код который у вас слишком идеальный.

<td>
bla-bla-bla<br><br>
bla
</td>


think different
 
OlegFox:
можно написать все с помощью strpos и substr будет быстрее...
находишь все, что между <br> и выводишь как тебе надо...
 
OlegFox, попробуй это:
PHP:
$str = '<br>текст<br><br>текст<br>';
$str = preg_replace('~<br>(.*?)<br>~s', '<p>\\1</p>', $str);
print $str;
 
Сверху