<table        </table>之间的写法,我也在寻找,你要是找到了,麻烦教我一下……---------------------
<img         >  之间的正则!
preg_match_all("/(\<img)(.[^\>]*)/i",$text, $msg);

解决方案 »

  1.   

    那是递归匹配。好象是php4x还是php5才开始支持的。
      

  2.   

    我写的匹配复杂表格的正则。要是报错就升级你的php。php5下测试无误。#(?:^|.)(?=(<table(?:(?:[^<]|<(?!table))*?|(?1))*</table>))#
      

  3.   

    多写了一截。这样写就可以了。#(?=(<table(?:(?:[^<]|<(?!table))*?|(?1))*</table>))#
      

  4.   

    preg_match_all("/(\<img)(.[^\>]*)/i",$text, $msg);
    preg_match_all("/<table(.[^\>]*)>(.*?)<\/table>/is",$text,$msg);
      

  5.   

    $ar = preg_split("/<table(.[^\>]*)>(.*?)<\/table>/is", $text, -1, PREG_SPLIT_ALL);
    这个是我用上面这个正则截出来的效果,不是我想要的结果啊!
    Array
    (
        [0] => Array
            (
                [0] => Array
                    (
                        [0] => <table width="100%" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF">
          <tr>
            <td align="center" valign="top" > <table width="580" border="0" cellspacing="0" cellpadding="0">
              <tr>
                <td height="28" align="center" background="images/4Down.gif" style="word-break:break-all">你们的江泽民主席来啦!</td>
              </tr>
              <tr>
                <td height="20" align="center"><img src="images/sun.gif" width="9" height="9" align="absmiddle" /> 作者: David &nbsp; 发表日期: 2006-07-19 13:30:26 &nbsp;&nbsp;</td>
              </tr>
              <tr>
                <td align="left" class="topline" style="word-break:break-all"> <table width="100%"  border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td height="10"></td>
      </tr>
    </table>
                        [1] => 4
                    )            [1] => Array
                    (
                        [0] =>  width="100%" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF"
                        [1] => 10
                    )            [2] => Array
                    (
                        [0] => 
          <tr>
            <td align="center" valign="top" > <table width="580" border="0" cellspacing="0" cellpadding="0">
              <tr>
                <td height="28" align="center" background="images/4Down.gif" style="word-break:break-all">你们的江泽民主席来啦!</td>
              </tr>
              <tr>
                <td height="20" align="center"><img src="images/sun.gif" width="9" height="9" align="absmiddle" /> 作者: David &nbsp; 发表日期: 2006-07-19 13:30:26 &nbsp;&nbsp;</td>
              </tr>
              <tr>
                <td align="left" class="topline" style="word-break:break-all"> <table width="100%"  border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td height="10"></td>
      </tr>                    [1] => 100
                    )        )    [1] => Array
            (
                [0] => Array
                    (
                        [0] => <table width="100%"  border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" >
              <tr>
                <td class="blogtit col1">个人空间分类</td>
              </tr>
              <tr>
                <td align="left" valign="top" class="p10"><div class="article">
    <ul>
    <li>暂时没有个人空间分类</li>
    </ul>
    </div></td>
              </tr>
             
          </table>
                        [1] => 3441
                    )            [1] => Array
                    (
                        [0] =>  width="100%"  border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" 
                        [1] => 3447
                    )            [2] => Array
                    (
                        [0] => 
              <tr>
                <td class="blogtit col1">个人空间分类</td>
              </tr>
              <tr>
                <td align="left" valign="top" class="p10"><div class="article">
    <ul>
    <li>暂时没有个人空间分类</li>
    </ul>
    </div></td>
              </tr>
             
          
                        [1] => 3524
                    )        ))
      

  6.   

    我说说我的意思吧,用这个正则我是想截取字符串!
    我想要如果遇到<img  被截取一半的时候把这个文字一直截到 >结束
    <table>也是一样一半的话就截取到</table>结束
      

  7.   

    preg_split是用来分割字符串的。谁说可以用来截断定长字串的?你思路上本来就有问题。
      

  8.   

    http://community.csdn.net/Expert/topic/4884/4884378.xml?temp=.953808
      

  9.   

    我看了,zeroleonhart(Strong Point:Algorithm) 但是感觉还是理解不了table的问题table有的时候是套在table中的
      

  10.   

    我写的那个正则就可以正确的识别一切嵌套的table。只不过不能用于preg_splite函数罢了。preg_match_all("#(?=(<table(?:(?:[^<]|<(?!table))*?|(?1))*</table>))#",$str,$ar);
    print_r($ar);你自己看结果吧。
      

  11.   

    为什么我用了GDJ的以后出现PHP has encountered a Stack overflowHTTP/1.1 500 Server Error Server: Microsoft-IIS/5.1 Date: Tue, 05 Sep 2006 14:04:49 GMT Content-Type: text/html Content-Length: 44 -2147417842 (0x8001010e)我截取的是$str = file_get_contents("http://stock.business.sohu.com/p/pl.php?code=600240");