replace () с RegExp для элементов массива
Я хочу написать функцию JavaScript, которая преобразует некоторые простые теги BBcode, такие как [red] [/ red], в Html-теги. Я думаю, что функция replace () - лучший способ сделать это. Я написал простую тестовую функцию, чтобы попробовать ее, но, похоже, она не работает.
/**
* @function
* @description Replaces the bb-tags with html-tags
*/
function bbToHtml(form) {
debugger
var text = form.text.value;
bbTags = new Array("[red]", "[yellow]", "[green]", "[/red]", "[/yellow]", "[/green]");
htmlTags = new Array("", "", "", "", "", "");
for (var i = 0; i < bbTags.length; i++) {
var re = new RegExp(bbTags[i], "g");
text = text.replace(re, htmlTags[i]);
}
alert(text);
}
Должно конвертировать"[red]hello[/red]"
в"hello"
, но это просто дает мне странную строку.
Что случилось? Я думаю, что это как-то связано с моим регулярным выражением.