Как поменять bbcode коды в html с помощью jQuery

· JavaScript и Блог · 1 мин чтения

В поисках разной информации по поводу хорошего bbcode парсера, я наткнулся на интересный вопрос вопрос на stackoverflow. Пользователь спрашивает как можно конвертировать bbcode коды в html формат и предоставляет свой код, который работает некорректно.

Один из пользователей предоставляет свой вариант кода (модифицированный):

jQuery

$str = 'это [b]жирный[/b] и [i]курсив[/i] строка';

// Массив с помощью которого будем искать нужные bbcode
$format_search =  [
    /\[b\](.*?)\[\/b\]/ig,
    /\[i\](.*?)\[\/i\]/ig,
    /\[u\](.*?)\[\/u\]/ig
]; // на заметку: НЕТ запятой после последнего добавленного значения

// Для того чтобы сравнивать значения и выводить нужный html код
$format_replace = [
    '<strong>$1</strong>',
    '<em>$1</em>',
    '<span style="text-decoration: underline;">$1</span>'
];

// Смена данных, для перевода данных bbcode -> html
for (var i =0;i<$format_search.length;i++) {
  $str = $str.replace($format_search[i], $format_replace[i]);
}

alert($str); // Выводим

Живой пример можно посмотреть тут.

Данный код может пригодиться кодерам, которые планирует разработку своего плагина или просто упрощение уже существующего, так как некоторые из bbcode плагинов очень громоздки.

Приятного коддинга ;)