Преобразование тегов HTML в теги BBCode с использованием рекурсивных шаблонов регулярных выражений.Php

Кемеровские программисты php общаются здесь
Anonymous
Преобразование тегов HTML в теги BBCode с использованием рекурсивных шаблонов регулярных выражений.

Сообщение Anonymous »

У меня возникла проблема с функцией BBCode. Я проверил следующий ввод для замены:

Код: Выделить всё

Testtext! text[u]testtext[/u]test[/b][b]test[/b][b]
и получите этот (смешанный) результат:

Код: Выделить всё

Testtext! [b]text[u]testtext[/u]test[/b]test[b]test[/b]
мой PHP-код:

Код: Выделить всё

function html_to_bbcode($input) {
$regex[] = '#\((?:[^[]|\)|(?R))+)\[/b]#im';
$regex[] = '#\[i]((?:[^[]|\)|(?R))+)\[/i]#im';
$regex[] = '#\[u]((?:[^[]|\)|(?R))+)\[/u]#im';

if (is_array($input)) {
$tag = explode('>', $input[0]);
$tag = str_replace('

Подробнее здесь: [url]https://stackoverflow.com/questions/26871903/convert-html-tags-to-bbcode-tags-using-recursive-regex-patterns[/url]

Вернуться в «Php»