-1
下面的代码将接受一个输入并通过评论列表运行,以查找关键字,并用关键字包围关键字并突出显示该关键字。如何排除锚标签?
这几乎可以工作,只不过REGEX还替换了关键字,如果它在锚标签之间找到的话。
如何更改下面的正则表达式来忽略锚标签?
任何帮助将不胜感激。
谢谢。
inputHighlight: function(){
let currentURL = document.location.toString(),
reviewList = $('.review-list');
if(currentURL.indexOf('kw') !== -1){
var reviews = reviewList.html();
var term = utilities.queryString.getQueryValue("kw");
term = term.replace(/(\s+)/,"(<[^>]+>)*$1(<[^>]+>)*");
var pattern = new RegExp("("+term+")", "gi");
reviews = reviews.replace(pattern, "<mark>$1</mark>");
reviews = reviews.replace(/(<mark>[^<>]*)((<[^>]+>)+)([^<>]*<\/mark>)/,"$1</mark>$2<mark>$4");
reviewList.html(reviews);
}
}