我需要替换标签中的一些单词。例如
text text text dog text cat text text mouse.
需要替换为<b>dog</b>
或<b>cat</b>
或<b>mouse</b>
如果匹配。
我需要更换一次。如果找到单词dog则表示替换<b>dog</ b>
中唯一的狗。仅此而已。即使猫或鼠标将是文本。
我有代码。
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>')
关于Javascript,搜索多个单词并自行替换。如果找到,仅替换文本中的其中 1 个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7947157/