Парсинг BB-кодов

Если Вы создавали форум или создавали возможность комментирования на сайте, то, вполне вероятно, что Вы сталкивались с BB-кодами. На всякий случай, BB-коды — это набор тегов, похожих на HTML-теги. которые созданы для редактирования внешнего вида сообщения. Например, [b][/b]. [url=http://google. ru]Google[/url]. [img]http://myrusakov. ru/img. jpg[/img] — это всё различные BB-коды. И вот задача программиста состоит в том, чтобы преобразовать BB-коды в HTML-код. Вот парсингом BB-кода и превращением его в HTML-код. мы и займёмся в этой статье.

Сразу привожу код этого скрипта, а точнее функции, которая принимает текст с BB-кодами. а возвращает уже HTML-код :

«#\\\n#is»,

«#\[b\](.+?)\[\/b\]#is»,

«#\[i\](.+?)\[\/i\]#is»,

«#\[u\](.+?)\[\/u\]#is»,

«#\[code\](.+?)\[\/code\]#is»,

«#\[quote\](.+?)\[\/quote\]#is»,

«#\[listn](.+?)\[\/listn\]#is»,

«#\[\*\](.+?)\[\/\*\]#»

$str_replace = array(

«<br />»,

«<b>\\1</b>»,

«<i>\\1</i>»,

«<span style=’text-decoration:underline’>\\1</span>»,

«<code class=’code’>\\1</code>»,

«<table width = ‘95%’><tr><td>Цитата</td></tr><tr><td class=’quote’>\\1</td></tr></table>»,

«<a href=’\\1′>\\2</a>»,

«<span style=’font-size:\\1%’>\\2</span>»,

«<span style=’color:\\1′>\\2</span>»,

«<ul>\\1</ul>»,

«<ol>\\1</ol>»,

«<li>\\1</li>»

return preg_replace($str_search, $str_replace, $text_post);

Надеюсь, данная функция поможет Вам в парсинге BB-кодов. По аналогии, Вы можете добавить ещё различных BB-кодов. например, BB-код вставки видео с YouTube .

Добавить комментарий