js正则多个值动态替换问题?

var str='red|blue|green'; 这个变量不是自定义的,属于动态生成的变量。
我想实现对这些字符加上span标签。如下是我用的方法:
name.replace(/(str)/g,'<span>$1<span>')

但结果是对str这个字符加上标签,而不是预期的效果,请帮忙确认下。谢谢!
比如:name="redsee嗡嗡嗡|blue green'搜索str";
使用上面的正则表达式时 结果为:name="redsee嗡嗡嗡|blue green'搜索<span>str</span>";
想要的结果是name="<span>red</span>see嗡嗡嗡|<span>blue</span> <span>green</span>'搜索str";

你好,我给你写了一个例子,你看下:

var str = 'red|blue|green';
var name = "redsee嗡嗡嗡|blue green'搜索<span>str</span>";
name = name.replace(new RegExp("(" + str + ")", "g"), "<span>$1</span>");
console.log(name);

希望是你想要的答案,如有疑问欢迎追问,望采纳~

温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网