preg_match_all("/<tr>.*?<td>.*?<a.*?href=(\")(.*?)\\1>(.*?)<\/a>.*?<\/td>.*?<td>(.*?)<\/td>.*?<\/tr>/is",$s,$ar,PREG_SET_ORDER);
foreach($ar as $k=>$v)
{
echo "url=".$v[2]."<br>title=".$v[3]."<br>date=".$v[4]."<br><br>";
}

解决方案 »

  1.   

    <?php
    $s = '<table width="100%" border="0" cellspacing="0" cellpadding="0">
    <tr>
    <td><a href="1.htm">E&#208;&#199;&#210;&#187;&#180;ú</a></td>
    <td>05-11-18</td>
    </tr>
    <tr>
    <td><a href="2.htm">&#201;ú&#206;&#239;&#208;&#197;&#207;&#162;&#209;§&#212;&#186;&#190;&#217;&#208;&#208;&#180;ó&#208;&#205;&#208;&#196;&#192;í&#189;&#161;&#191;&#181;×&#201;&#209;&#175;&#187;&#238;&#182;&#175;</a></td>
    <td>05-11-18</td>
    </tr>
    <tr>
    <td><a href="3.htm">&#201;ú&#206;&#239;&#208;&#197;&#207;&#162;&#209;§&#212;&#186;&#161;°&#201;ú&#195;ü&#189;&#161;&#191;&#181;&#187;&#238;&#182;&#175;&#212;&#194;&#161;±&#207;&#181;&#193;&#208;&#187;&#238;&#182;&#175;&#214;&#174;&#210;&#189;&#193;&#198;</a></td>
    <td>05-11-18</td>
    </tr>
    <tr>
    <td><a href="4.htm">&#209;§&#208;&#163;&#213;&#217;&#191;&#170;2005&#189;ì&#190;&#205;&#210;&#181;&#185;¤×÷×&#220;&#189;á&#244;&#223;2006&#189;ì&#190;&#205;&#210;&#181;&#185;¤×÷&#178;&#191;</a></td>
    <td>05-11-17</td>
    </tr>
    </table>';if (preg_match_all("/<a href=\"(.+)\">(.+)<\/a>.*(\d{2}-\d{2}-\d{2})/Us", $s, $matches)) {
    print_r($matches);
    } else {
    echo "error";
    }?>
      

  2.   

    晕,再发一遍
    <?php
    $s = '<table width="100%" border="0" cellspacing="0" cellpadding="0">
    <tr>
    <td><a href="1.htm">E星一代</a></td>
    <td>05-11-18</td>
    </tr>
    <tr>
    <td><a href="2.htm">生物信息学院举行大型心理健康咨询活动</a></td>
    <td>05-11-18</td>
    </tr>
    <tr>
    <td><a href="3.htm">生物信息学院“生命健康活动月”系列活动之医疗</a></td>
    <td>05-11-18</td>
    </tr>
    <tr>
    <td><a href="4.htm">学校召开2005届就业工作总结暨2006届就业工作部</a></td>
    <td>05-11-17</td>
    </tr>
    </table>';if (preg_match_all("/<a href=\"(.+)\">(.+)<\/a>.*(\d{2}-\d{2}-\d{2})/Us", $s, $matches)) {
    print_r($matches);
    } else {
    echo "error";
    }?>
      

  3.   

    一步:
    preg_match_all("/<td><a\s+href=\"(.+)\">(.+)<\/a><\/td>\s+<td>(.+)<\/td>/Us",$s,$out);print_r($out[1]);
    echo "<hr>";
    print_r($out[2]);
    echo "<HR>";
    print_r($out[3]);