如何使用javascript Regex访问DOM元素

how to access DOM elements using javascript Regex

本文关键字:DOM 元素 访问 Regex 何使用 javascript      更新时间:2023-09-26

我想通过匹配与页面上存在的DOM元素匹配并返回包含此特定字符串的元素的JavaScript正则表达式来获得页面中存在的所有DOM元素:" tel:"

例如,如果<a href="tel:+1222333458">1222333458</a>中存在achor标记,则正则表达式返回DOM元素。或者一个span可以包含如下:我已经提出了一个简单的正则表达式,匹配字符串"tel:"

/tel:*/g

但是它并没有做我真正想要它做的。

我不只是感兴趣的锚标记与href包含"tel:",但任何其他dom元素可以包含tel:在他们的任何属性或值或html使用javascript正则表达式仅它应该能够找到数据属性像这样的所有元素data-mtype = '电话:'

更新为显示任何包含tel:的元素:

console.log(
  Array.prototype.slice.call(document.querySelectorAll('*')).filter(function(element) {
    var match = element.outerHTML.match(/tel:/gi);
    if (match == null) {
      return false;
    }
    if (match == void 0) {
      return false;
    }
    return true;
  })
)
<a href="1234 5678">1</a>
<a href="tel">2</a>
<a href="tel:1234 5678">3</a>
<a href="tel:12345678">4</a>