Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Повторяющиеся значения для preg_replace. Как удалить?
Попробовал просто заменить все </p><p> на <br> - почти хорошо получилось, НО!
Время от времени встречается <p align=center> и после такого обрезания на <br> все, что ниже тега center тоже начинает центрироваться.
Попытался так:
заменяю
<p>([^align=]*?)</p><p>
на
<p>\\1<br>
Получаю - часть обрабатывается, как надо, но часть вообще не обрабатывается.
Если такую зачистку провести несколько раз (3-4), то почти все, как надо, но все таки, может есть более простое выражение, чтобы получалось из:
Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010
Помог: 322 раз(а)
striptags() (Добавление)
nl2br()
LShark
Отправлено: 09 Декабря, 2012 - 11:04:11
Частый гость
Покинул форум
Сообщений всего: 240
Дата рег-ции: Нояб. 2012
Помог: 1 раз(а)
Не получится.
Стриптаг отрезает вообще ВСЕ тэги, а это полноценный документ, с боди, стилями и прочим мусором.
Плюс он УЖЕ вытянут в одну строку (т.е. в нем НЕТ переносов строк - nl2br отпадает)
Проблема в ОТОБРАЖЕНИИ текста в браузере.
</p><p> создают между строками отступ, который мне не нужен. Потому мне выгоднее <br>
Но как убрать только те тэги </p>, которые не закрывают абзац с align ?
т.е.
<p>Текст</p><p>Еще текст</p> <<<< тут </p><p> подлежит замене на <br>
<p align=center>Текст</p><p>Еще текст</p> <<<< тут </p><p> НЕ подлежит замене на <br>, так как тогда "Еще текст" тоже отцентруется, а мне это не нужно.
В документе сотни строк, буквально по 3-4 слова в строке, потому и надо их "сжать" по высоте. Ну и к тому же - 200 раз <p></p> - это 200х7=1400 символов, а 200 раз <br> - это лишь 200х4=800 - немного, но выигрыш в размерах все таки есть. А строк иногда бывает по 2-3к.
Покинул форум
Сообщений всего: 240
Дата рег-ции: Нояб. 2012
Помог: 1 раз(а)
Я, видишь ли, врач
И это мое хобби, которое, одновременно, облегчает жизнь мне и куче других людей, которые вообще считают компьютер "Бесовской машиной" и не способны ни на что, кроме натыкивания в Ворде документов.
Потому для меня 99% всяких
$books[$i]['id'] = $element->id;
$books[$i]['image'] = $element->children(0)->src;
Темный лес, опутанный колючей проволокой. В основном для этого юзал страницу про регулярные выражения с главной страницы php.su. Но не всегда ее хватает.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.