正则动态匹配关键字高亮(不能匹配HTML标签)

2021-04-16  本文已影响0人  无缘霸哥

index.html

<div class="aa"></div>

index.css

mark {
    background: red;
    color: blue;
  }

index.js

let str = '这是<span>世界杯span</span>';
let keyword = 'span';
// 这里采用构造函数的方式初始化正则表达式对象 因为可以使用变量,字面量的方式不能使用变量
let regExp = new RegExp(`(?<!<\/?)${keyword}(?!\/?>)`, 'g');
document.getElementsByClassName('aa')[0].innerHTML = str.replace(regExp, '<mark>$&</mark>')

效果图前后


效果前页面.png
效果前html.png
效果后页面.png
效果后html.png
上一篇 下一篇

猜你喜欢

热点阅读