我要提取a标记属性href包含/advisories/cve_reference/的URL,
例如:<a href="/advisories/cve_reference/CVE-2010-3979/">用正则怎么写我要的结果不是href的值,而是<a href="/advisories/cve_reference/CVE-2010-3979/">aa</a>整个标签及内容

解决方案 »

  1.   

    /<[aA][\S\s]*?href=[\"\']\/advisories\/cve_reference\/[\w\d\-\/]+?[\"\']>[\S\s]*?<\/[aA]>/g
      

  2.   


    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    <style></style>
    <script type="text/javascript" src="jquery-1.4.2.min.js"></script>
    <script type="text/javascript">
    window.onload = function() {
    var a = /<[aA][\S\s]*?href=[\"\']\/advisories\/cve_reference\/[\w\d\-\/]+?[\"\']>[\S\s]*?<\/[aA]>/g;
    var test = document.body;
    alert(test.innerHTML.match(a)[0]);
    };
    </script>
    </head>
    <body>
    <a href="/advisories/cve_reference/CVE-2010-3979/"></a>

    </bodY></html>
      

  3.   

    http://secunia.com/advisories/41894
    麻烦用这个页面试一下,我试了,好像不行,谢谢:)
      

  4.   

    /\<[aA][\s]+?href=[\"\']\/advisories\/cve_reference\/[\w\d\-\/]+?[\"\']\>[\S\s]*?\<\/[aA]\>/gi
      

  5.   

    楼上的大哥再辛苦一下,呵呵,我想改成查找包含/advisories/cve_reference/的<a>与</a>之间的内容,以逗号隔开,谢谢
    最后的格式是这样:CVE-2010-3979,CVE-2010-3978,CVE-2010-3977
      

  6.   


    var a = /\<[aA][\s]+?href=[\"\']\/advisories\/cve_reference\/[\w\d\-\/]+?[\"\']\>([\S\s]*?)\<\/[aA]\>/gi;
            var test = data;
    var i = [];
    while(a.exec(test)) {
    i.push(RegExp.$1);
    }
    alert(i);