如何使用Regex突出显示字符串中的多个关键字/单词?

时间:2018-02-23 15:01:15

标签: javascript angularjs regex

我有以下我想解决的案例。

Javascript突出显示词组中关键字的方法。

 vm.highlightKeywords = (phrase, keywords) => {
  keywords = keywords.split(' ');
   let highlightedFrase = phrase;

   angular.forEach(keywords, keyword => {
       highlightedFrase = highlightedFrase.replace(new RegExp(keyword + "(?![^<])*?>)(<\/[a-z]*>)", "gi"), function(match) {
           return '<span class="highlighted-search-text">' + match + </span>';
       });
   });

   return $sce.trustAsHtml(highlightedFrase)
 }

如何编写与此案例匹配的正则表达式,以便我可以替换子字符串

keyowrds = 'temperature high'

phrase = 'The temperature is <span class="highlight">hig</span>h'

ReGex案例

https://regex101.com/r/V8o6gN/5

0 个答案:

没有答案