JSFiddle - React, Tailwind, and code Playground
HTML
<div id="main"></div>
CSS
.quote{
margin-left:10px;
margin-right:10px;
background-color:grey;
color:black;
border:1px dotted green;
}
JavaScript
function bbcode_parser(str) {
search = new Array(
/\[b\](.*?)\[\/b\]/g,
/\[i\](.*?)\[\/i\]/g,
/\[quote](.*?)\[\/quote\]/g,
/\[\*\]\s?(.*?)\n/g);
replace = new Array(
"<strong>$1</strong>",
"<em>$1</em>",
"<div class='quote' style='margin-left:10px;margin-top:10px;'>$1</div>");
for (i = 0; i < search.length; i++) {
var lastStr = null;
while(lastStr != str && str != null)
{
lastStr = str;
str = str.replace(search[i], replace[i]);
}
}
return str;
}
var myStr = '[quote]Quote by: user1 [quote]Quote by: user2 ads[/quote]Test[/quote]Testing 2.';
var result = bbcode_parser(myStr);
document.getElementById('main').innerHTML = result;