如何正则识别并转换HTML代码中的链接?

<a href="https://example.com/?p=540#more-540" class="more-link">read more</a>

<a href="/?p=540#more-540" class="more-link">read more</a>

HTML代码中有上述链接,通过一个正则,能够将上述链接转换成 <!--more-->,请问这个JS的正则怎么写?


<span id="more-540"></span>

HTML代码中有上述span,通过一个正则,能够将上述span转换成 <!--more-->,请问这个JS的正则怎么写?

阅读 3k
2 个回答
window.onload = function () {
    var links = document.getElementsByTagName("a");
    for(var i = 0; i < links.length; i++) {
        var href = links[i].getAttribute("href");
        if(href.match(/.*example\.com.*/i)) {
           links[i].parentNode.replaceChild(document.createComment("more"),links[i]);
        }
    }
}

下面这个正则,可以匹配html标签

// \1 标示 和 第一个括号中的内容一样
/<([a-z]+).*>.*<\/(\1)>/gi

具体要匹配什么,你自己看需求加吧

推荐问题