求详解一段JS 正则语句

return value.replace(new RegExp("(?![^&;]+;)(?!<[^<>]*)(" + term.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi, "\\$1") + ")(?![^<>]*>)(?![^&;]+;)", "gi"), "<strong>$1</strong>");

autoComplete里的一段代码,作用是把匹配的字符高亮显示.

但是具体的正则有点不明白.想学习一下.谁能详细解释一下吗

阅读 4.2k
1 个回答

(?![^&;]+;) 不是 非&;加上一个;的位置
(?!<[^<>]*) 不是<后面带一串非<>的位置
([\^\$\(\)\[\]\{\}\*\.\+\?\|\\]) 找出[]中这些正则标记
(?![^<>]*>) 不是一些非<>字符后面加一个>的位置

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题