Есть функция
function showBBcodes($text) {
// BBcode array
$find = array(
'~\[b\](.*?)\[/b\]~s',
'~\[i\](.*?)\[/i\]~s',
'~\[u\](.*?)\[/u\]~s',
'~\[quote\](.*?)\[/quote\]~s',
'~\[size(.*?)\=(.*?)\](.*?)\[/size\]~s',
'~\[color(.*?)\=(.*?)\](.*?)\[/color\]~s',
'~\[url\]((?:ftp|https?)://.*?)\[/url\]~s',
'~\[img\](https?://.*?\.(?:jpg|jpeg|gif|png|bmp))\[/img\]~s',
'~\[b_id\](.*?)\[/b_id\]~s',
'~\[tex\](.*?)\[/tex\]~s',
'~\[sup\](.*?)\[/sup\]~s'
);
// HTML tags to replace BBcode
$replace = array(
'<span stype="font-weight: bold;"> $1</span>',
'<i>$1</i>',
'<span style="text-decoration:underline;">$1</span>',
'<pre>$1</'.'pre>',
'<span style="font-size:$2px;">$3</span>',
'<span style="color:$2;">$3</span>',
'<a class="blue-font" href="$1">$1</a>',
'<a class="blue-font" href="$1"><img src="$1" alt=""></a>',
'<sub>$1</sub>',
'<a class="blue-font" href="http://jabber.pozitiv-r.ru/cgi-bin/mathtex.cgi?$1"><img src="http://jabber.pozitiv-r.ru/cgi-bin/mathtex.cgi?$1" alt=""></a>',
'<sup>$1</sup>'
);
// Replacing the BBcodes with corresponding HTML tags
return preg_replace($find,$replace,$text);
}
Требуется в теге [tex] убрать </br>
, просто strip_tags не годится, ибо не нужно обрезать их во всем результате(поедет весь текст). Пробовал переделывать регулярку,но не получалось. Прошу помощи
Можно сделать с помощью preg_replace_callback
, если в будущем нужно будет делать преобразования над другими вхождениями. Если нет, то можно просто preg_match_all
, обработка результата str_replace
(замена <br/>
на ""
), и затем замена в исходной строке опять же str_replace
.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
1) Как правильно перенаправить все запросы на роутер, но тем не менее исключить перенаправление для стилей, js-скриптов, картинок, музыки, видео...
Какие преимущества дает назначение событий через универсальный метод on() перед назначением событий, например, методами click(), hover(), keydown()?