现在如下字符串:<div style="">
<table boder=0>
<tr><td>dfdf</td></tr>
</table>
<table boder=0>
<tr><td>test</td></tr>
</table>
<table boder=0>
<tr><td>rrr</td></tr>
</table>
</div>现我想得到:<table boder=0>
<tr><td>test</td></tr>
</table>
字符串。
求一正则

解决方案 »

  1.   

    LZ是只想要中间的哪个table么?还是匹配所有的相同的table哟?
      

  2.   

    中间只含有test的字符串的table
      

  3.   

    /\<table\s.*?\>.*?test.*?\</table\>/im
      

  4.   


    $str = '<div style="">
    <table boder=0><tr><td>dfdf</td></tr></table>
    <table boder=0><tr><td>test</td></tr></table>
    <table boder=0><tr><td>rrr</td></tr></table>
    </div>
    ';$p = '|</table>.*?<table.*?>test.*?</table>|ims';
    if(preg_match($p,$str,$match)){
    print_r($match);
    }
      

  5.   

    谢谢两位的回答,但是都不对,
    我想得到的结果 是:
    <table boder=0>
    <tr><td>test</td></tr>
    </table>
      

  6.   

    有一个php的dom库simple php dom搜一下,很好用。