javascript regexp:找到包含标签内部字符串或标签内部的锚点

时间:2017-09-11 19:04:20

标签: javascript regex

我有以下内容检查锚点文本部分内的字符串str,即<a href="#">text containing str</a>

RegExp('<a.*?>.*?str.*?</a>', 'gi')

但是,我也需要它来检查标签内部,即<a href="link_containing_str">some text</a>

我尝试了以下但不起作用:

RegExp('<a.*?str.*?</a>', 'gi')

我需要使用什么语法?

1 个答案:

答案 0 :(得分:0)

不要使用Regex,只需检查对象的innerHTMLhref属性中是否存在字符串:

&#13;
&#13;
document.querySelectorAll('a').forEach(x => {
  console.log(x.innerHTML.includes('str') || x.href.indexOf('str') != -1);
})
&#13;
<a href="#">text containing str</a>
<a href="link_containing_str">some text</a>
<a href="#">text</a>
<a href="link">some text</a>
&#13;
&#13;
&#13;