在匹配或替换时排除某些上下文

时间:2018-11-01 07:51:35

标签: javascript regex angular typescript

我正在将angular 4与打字稿一起使用。

let string1 = "I love chicken so much. but I don't like chickensoup. Do you love itemchicken";

let blockWord = "chick";

let safeWord = "chicken"

我在这里找到blokword“小鸡”,并将其替换为带有Highlight类的span标签,以突出显示string1中的blockWord。

   let regex_escaped_block_word = blockWord.replace(/[\*?{}().+]/gi, '\\$&');
   string1= string1.replace(new RegExp(regex_escaped_block_word, 'gi'), "<span class='highlight'>" + blockWord + '</span>');

结果:

  

我非常爱小鸡。但我不喜欢小鸡。你喜欢物品小鸡 en

想要实现:

  

我想从正则表达式扫描中排除确切的safeWord“鸡”,以使其不会突出显示,结果看起来像

预期结果:

  

我非常喜欢鸡肉。但我不喜欢小鸡。你喜欢物品小鸡 en

0 个答案:

没有答案