BBcode в javascript
В общем-то функция BBcode в javascript ничем не отличается, от ранее написанной страницы о BBcode в php. Единственное отличие BBcode в javascript, что данный пример не использует массивы, а в функцию на каждую замену – отдельная строка с функцией replaceПреобразование BBcode в html в javascript
Для того, чтобы преобразовать BBcode в html в javascript, копируем все, что выделено внизу... вставляем туда, где это вам требуется...
заменяем название htmlToBBCode например на BBCodeTohtml ? html на ...например backhtml
Берем каждую строку, на примере первой:
И преобразуем её в такую:
Я бы вам предложил готовую BBcode функцию javascript, но её нет у меня!
Ну а вот живая функция html в BBcode есть, которой непосредственно пользуюсь и использовали в наших комментахПреобразование html в BBcode в javascript
В некоторых строках, где присутствует переменная
Некоторые строки закомментированы(//) - это сделано потому, что не все преобразования мне требуются...
var htmlToBBCode = functionhtml {
html = html.replace(/<h2(.*?)>(.*?)<\/h2>/, "\n[h2]$2[/h2]\n");
html = html.replace(/<h3(.*?)>(.*?)<\/h3>/, "\n[h3]$2[/h3]\n");
html = html.replace(/<h4(.*?)>(.*?)<\/h4>/, "\n[h4]$2[/h4]\n");
html = html.replace(/<a(.*?)href="(.*?)"(.*?)>(.*?)<\/a>/gi, "[url=$2]$4[/url]");
html = html.replace(/<span(.*?)style="color:(.*?)"(.*?)>(.*?)<\/span>/gi, '[COLOR="$2"]$4[/COLOR]');
html = html.replace(/<img(.*?)src="httpDomen\/comments+1_4\/blocks\/_smaile\/(.*?).gif"(.*?)>/gi, "[$2]");
html = html.replace(/<img(.*?)src="httpDomen\/comments+1_4\/blocks\/_smaile_girl\/(.*?).gif"(.*?)>/gi, "[$2]");
html = html.replace(/<img(.*?)src="(.*?)"(.*?)>/gi, '[img]$2[/img]');
html = html.replace(/<red>(.*?)<\/red>/gi, '[red]$1[/red]');
html = html.replace(/<s>(.*?)<\/s>/gi, '[s]$1[/s]');
html = html.replace(/<l>(.*?)<\/l>/gi, '[l]$1[/l]');
html = html.replace(/<strong>(.*?)<\/strong>/gi, '[strong]$1[/strong]');
html = html.replace(/<em>(.*?)<\/em>/gi, '[em]$1[/em]');
html = html.replace(/<u>(.*?)<\/u>/gi, '[u]$1[/u]');
html = html.replace(/<sup>(.*?)<\/sup>/gi, '[sup]$1[/sup]');
html = html.replace(/<sub>(.*?)<\/sub>/gi, '[sub]$1[/sub]');
html = html.replace(/<iframe(.*?)src="https:\/\/www.youtube.com\/embed\/(.*?)"(.*?)><\/iframe>/gi, "[YOUTUBE]$2[/YOUTUBE]");
html = html.replace(/<br(.*?)>/gi, "\n");
//- if a paragraph opens on the same line as another one closes, insert an extra blank line
//- opening tag becomes two line breaks
//- closing tags are just removed
// html += html.replace(/<\/p><p/<\/p>\n<p/gi;
// html += html.replace(/<p[^>]*>/\n\n/gi;
// html += html.replace(/<\/p>//gi;
// html = html.replace(/<textarea(.*?)>(.*?)<\/textarea>/gmi, "\[code]$2\[\/code]");
// html = html.replace(/<b>/gi, "[b]");
// html = html.replace(/<i>/gi, "[i]");
// html = html.replace(/<u>/gi, "[u]");
// html = html.replace(/<\/b>/gi, "[/b]");
// html = html.replace(/<\/i>/gi, "[/i]");
// html = html.replace(/<\/u>/gi, "[/u]");
// html = html.replace(/<em>/gi, "[b]");
// html = html.replace(/<\/em>/gi, "[/b]");
// html = html.replace(/<strong>/gi, "[b]");
// html = html.replace(/<\/strong>/gi, "[/b]");
// html = html.replace(/<cite>/gi, "[i]");
// html = html.replace(/<\/cite>/gi, "[/i]");
// html = html.replace(/<font color="(.*?)">(.*?)<\/font>/gmi, "[color=$1]$2[/color]");
// html = html.replace(/<font color=(.*?)>(.*?)<\/font>/gmi, "[color=$1]$2[/color]");
// html = html.replace(/<link(.*?)>/gi, "");
// html = html.replace(/<li(.*?)>(.*?)<\/li>/gi, "[*]$2");
// html = html.replace(/<ul(.*?)>/gi, "[list]");
// html = html.replace(/<\/ul>/gi, "[/list]");
// html = html.replace(/<div>/gi, "\n");
// html = html.replace(/<\/div>/gi, "\n");
// html = html.replace(/<td(.*?)>/gi, " ");
// html = html.replace(/<tr(.*?)>/gi, "\n");
// html = html.replace(/<img(.*?)src="(.*?)"(.*?)>/gi, "[img]$2[/img]");
// html = html.replace(/<head>(.*?)<\/head>/gmi, "");
// html = html.replace(/<object>(.*?)<\/object>/gmi, "");
// html = html.replace(/<script(.*?)>(.*?)<\/script>/gmi, "");
// html = html.replace(/<style(.*?)>(.*?)<\/style>/gmi, "");
// html = html.replace(/<title>(.*?)<\/title>/gmi, "");
// html = html.replace(/<!--(.*?)-->/gmi, "\n");
// html = html.replace(/\/\//gi, "/");
// html = html.replace(/http:\//gi, "http://");
// html = html.replace(/<(?:[^>'"]*|(['"]).*?\1)*>/gmi, "");
// html = html.replace(/\r\r/gi, "");
// html = html.replace(/\[url=\//gi, "[url=");
// html = html.replace(/(\S)\n/gi, "$1 ");
return html;
}
Свои комменты в ожидании переделки!
Когда сделаю не знаю!
Времени нет...
Иначе сообщение будет удалено, вас в бан - все просто!
Но если, сил нет как хочется высказать всё, что вы думаете об этом, пожалуйста - комменты от Vk - форма ниже: