怎么用正则实现得到一个闭合html标签里面的html内容?效果类似于我们用innhtml获取一段文本?
<div id="cc">
  <p>sss</p>
  <div>
    <p>aaaa</p>
    <div>bbbbb</div>
  </div>
</div>结果
  <p>sss</p>
  <div>
    <p>aaaa</p>
    <div>bbbbb</div>
  </div>

解决方案 »

  1.   

    内容是用file_get_contents得到的一段字符串,不是document对象。这个应该是介于贪婪与非贪婪之间的。才学习正则啊,写不出来。
      

  2.   

    var str="<div   id= \"cc \"><p> sss </p><div><p> aaaa </p><div> bbbbb </div></div></div>";/<div[^>]+?>(.*)<\/div>/.test(str);
    alert(RegExp.$1);
      

  3.   


    var str="<div   id= \"cc \"><p> sss </p><div><p> aaaa </p><div> bbbbb </div></div></div>";
    /<div[^>]+?>(.*)<\/div>/.test(str);
    alert(RegExp.$1);
      

  4.   

    你就这么理解贪婪的??这个用js的正则基本无解。涉及到了嵌套往往还得靠平衡组,而js不支持
    你这个只是个例。如果是这个个例,
    <div   id= "cc "> .*
    </div>
    贪婪匹配,然而,一个html里面不可能就这么一个div包着。所以,自求多福吧至于你说的是获取到的html字符串,那么可以用xml 来解析,前提又是你的html是符合xml规则的
    file_get_contents是php里的函数。我想在php里面可以加载和解析xml吧。
      

  5.   

    这个应该是介于贪婪与非贪婪之间的。
    <div></div>
    <div   id= "cc ">
        <p> sss </p>
        <div>
            <p> aaaa </p>
            <div> bbbbb </div>
        </div>
    </div>
    <div>
      <p>ddddd</p>
    </div>
    贪婪模式
    <p> sss </p>
        <div>
            <p> aaaa </p>
            <div> bbbbb </div>
        </div>
    </div>
    <div>
      <p>ddddd</p>
    非贪婪模式
        <p> sss </p>
        <div>
            <p> aaaa </p>
            <div> bbbbb 
    我要的(介于贪婪与非贪婪之间)
        <p> sss </p>
        <div>
            <p> aaaa </p>
            <div> bbbbb </div>
        </div>
    这个就是我的意思,有错误的还望各位路过的大哥大姐指教