正则表达式不工作“内部”javascript字符串

我正在尝试在文本字符串中替换[b]的所有提及,并将其替换为 。 我在下面使用它的问题是它取代了页面上的每个[b],我只希望它改变我发送的文本字符串(“text”)中的[b]。

在正则表达式中取出全局的’g’并不能很好地工作,因为它不能全部取代它们……

 text = $("#input").val(); text = text.replace(new RegExp('(^|\\s|>)\\[b](\\S.*?\\S)\\[/b]($|\\s|<)', 'gim') , '$1$2$3'); 

有任何想法吗? 谢谢

我不确定问题是什么,因为这个问题有点不清楚。 您是否尝试使用新的html标签替换textarea中的内容?

以下代码目前正在为我生产:

 text = $("#contract_body").val(); // strore the current contents text = text.replace(/\[b\](.*?)\[\/b\]/gim, "$1"); // replace bbcode with html tags $("#contract_body").val(text); // update the textarea with the new string contents 

我希望有所帮助。