se vuoi fare la sostituzione di determinati [tag quadri] con determinati <tag tradizionali> solo quando è presente il tag aperto e chiuso puoi usare le regular expression
ti faccio un esempio
codice:
<script>
function TrasformaTagQuadre(stringa,nomeTagQuadre,nomeTag){
var str='\\['+nomeTagQuadre+'\\](.*?)\\[\\/'+nomeTagQuadre+'\\]';
var re=new RegExp(str,'ig');
var ris=re.exec(stringa);
return stringa.replace(re,'<'+nomeTag+'>$1<\/'+nomeTag+'>');
}
str='il tag che si chiama tag1 lo trasformo in [tag1]bold[/tag1] mentre tag2 lo trasformo in [tag2]italic[/tag2]\n[tag1]così si pò scrivere [tag2]corsivo[/tag2] dentro il bold[/tag1]';
str2=str;
str2=TrasformaTagQuadre(str2,'tag1','b');
str2=TrasformaTagQuadre(str2,'tag2','i');
document.write(str+'
'+str2);
</script>