高亮显示字符。兼容大小写,特殊字符

anin / 2023-05-11 / 原文

一个兼容大小写,特殊字符的高亮显示函数

function highlight(str, char) {
  const escapedChar = char.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
  if (str.toLowerCase().includes(char.toLowerCase())) {
    return str.replace(new RegExp(escapedChar, 'gi'), `<mark>$&</mark>`);
  } else {
    return str;
  }
}