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;