Форум dkLab и Denwer
Здесь общаются Web-разработчики.
Генеральный спонсор:
Хостинг «Джино»

html_paragraph: Разбивает текст на параграфы, используя для этого html таги (Rin)
Author Message
Rin
Участник форума



Joined: 01 Jun 2005
Posts: 515
Карма: 184
   поощрить/наказать

Location: Москва

PostPosted: Wed Dec 07, 2005 11:50 am (написано за 2 минуты 55 секунд)
   Post subject: html_paragraph: Разбивает текст на параграфы, используя для этого html таги
Reply with quote

Разбивает текст на параграфы, используя для этого html таги (<p></p>, <br />).
Или, другими словами, переводит текст из text/plain в text/html.
"Красная строка" (отступ в начале абзаца) поддерживается, дублирующие пробелы вырезаются.
Текст возвращается без изменений если:
  * текст уже содержит html код параграфов
  * текст не содержит переносов строк


html_paragraph-1.0.17.rar
 Description:
html_paragraph

Download
 Filename:  html_paragraph-1.0.17.rar
 Filesize:  13.77 KB
 Downloaded:  718 Time(s)



Last edited by Rin on Wed Nov 28, 2007 11:24 am; edited 1 time in total
Back to top
View user's profile Send private message Send e-mail
Умкус
Guest





Карма: 388
   поощрить/наказать


PostPosted: Tue Nov 27, 2007 8:23 pm (спустя 1 год 11 месяцев 20 дней 8 часов 32 минуты; написано за 11 минут 40 секунд)
   Post subject:
Reply with quote

Привет, Rin!
Скриптец твой нашелся весьма вовремя. Еще пару часов был бы разбит мой монитор с горячей руки :) Не разобрался, как попросить pcre из строки
Code (html): скопировать код в буфер обмена
<p> (december.com/html/4/element/p.html)one</p>
<p> (december.com/html/4/element/p.html)two</p>
изящно выбрать массив array([0]=>"one",[1]=>"two"). Пытался сделать это так
Code (any language): скопировать код в буфер обмена
"#<p>([^<p]*)</p>#ims"
но со временем понял ошибку. Как же научить его избегать конкретную фразу, а не набор из класса...

Немножко поменял скрипт. Вопервых (поправь, если ошибаюсь) если скормить функции простую строку типа "string", он ее и вернет, ибо count($p) > intval(! (bool)$is_single) == 1 > 1. Изменил на больше либо равно. Плюс в строке, определяющей разбивку напараметры оставил только (?i:p), ибо, если в строке присутствуют <br />, но параграфов нет (TinyMCE, к примеру, бывает грешит этим делом, если текст вставлен из HTML Source Editor'a, или не нажат пользователем Enter, или нажат, но с шифтом), то разбивка на параграфы, таки, нужна, ибо ее, как таковой, и нет вовсе. В общем мне для моих нужд с этими минимальными поправками он подошел как родной, спасибо тебе за это и удачных скриптов.
ЗЫ PCRE у тебя поднят неслабо :) Респект
Back to top
Rin
Участник форума



Joined: 01 Jun 2005
Posts: 515
Карма: 184
   поощрить/наказать

Location: Москва

PostPosted: Wed Nov 28, 2007 10:56 am (спустя 14 часов 33 минуты; написано за 1 минуту 12 секунд)
   Post subject:
Reply with quote

Code (any language): скопировать код в буфер обмена
preg_match_all('/<p>(.*?)<\/p>/si', $s, $m);
Back to top
View user's profile Send private message Send e-mail
Умкус
Guest





Карма: 388
   поощрить/наказать


PostPosted: Wed Nov 28, 2007 3:45 pm (спустя 4 часа 49 минут; написано за 4 минуты 7 секунд)
   Post subject:
Reply with quote

Всего=то один дополнительный знак вопроса решает мои проблемы??? Самое странное что да :)
Хммм... вспомнил странное слово из доков на эту тему, слово "жадность". Погуглил на эту тему, так оно и оказалось. Спасибо вам большое, просветили. Одним белым пятном меньше.
Back to top
Display posts from previous:   
Post new topic   Reply to topic All times are GMT + 3 Hours
Page 1 of 1    Email to a Friend.
You cannot post new topics in this forum. You cannot reply to topics in this forum. You cannot edit your posts in this forum. You cannot delete your posts in this forum. You cannot vote in polls in this forum. You cannot attach files in this forum. You can download files in this forum.
XML