JQuery .replace函数重叠类似的短语

时间:2016-11-28 20:02:16

标签: jquery

我使用jQuery .replace函数将所有出现的某些单词转换为使用此代码的链接:

$.each($('p'), function(i,e) {
  $(e).html($(e).html().replace(/candy/g,'<a href="http://www.rantlifestyle.com/wp-content/uploads/2014/06/First.jpg">candy</a>'));
})

问题是某些短语包含相同的字母,所以当我有两个冲突时,这些词语不会被正确替换。例如,如果我使用此代码以及上面的代码:

    $.each($('p'), function(i,e) {
      $(e).html($(e).html().replace(/can/g,'<a href="https://thumbs.dreamstime.com/x/empty-tin-can-7151872.jpg">can</a>'));
})

然后它试图替换字母&#39;糖果&#39; &#39;可以&#39;我在“糖果”一词中指定了每个链接。&#39;

有没有办法指定我希望替换函数使用特定的短语?

旁注,我试图在jsfiddle上制作simple example这个并且它不起作用。也许这与我的问题有关?

谢谢!

1 个答案:

答案 0 :(得分:0)

在这里,您需要使用它来匹配整个单词:

{{1}}

https://jsfiddle.net/bndeL2q6/2/