Javascript,搜索多个单词并自行替换.如果找到,只替换文本中的1个



我需要在标签中替换一些单词。例如

文本文本文本狗文本猫文本文本文本鼠标。

如果匹配,需要替换为<b>dog</b><b>cat</b><b>mouse</b>。我需要换一次。如果发现单词dog表示替换<b>dog</ b>中唯一的狗。仅此而已。即使catmouse将是文本。

我有代码。

var str = "dog text cat text mouse",
    reg = /dog|cat|mouse/;
str = str.replace(reg, '<b>dog</b>').

对不起,这只替换任何匹配的<b>dog</b>

使用g标志进行全局搜索,而不是仅仅替换第一个出现项。

在正则表达式中使用括号来捕获匹配,并在替换中使用$1来使用捕获的内容。

var str = "dog text cat text mouse";
var reg = /(dog|cat|mouse)/g;
str = str.replace(reg, '<b>$1</b>')

最新更新