HTML文件名为 :1.html
内容如下:
======2010年03月22日======
空管站 :谭新四
航管部 :凌权观测室 :柯燕琼/黎建红
网络部 :刘铭
机务室 :刘军
通信室 :陆涛
======网络查询完毕!======
 
======2010年03月23日======
空管站 :黄细如
航管部 :王伟华网络部 :蒋林洁
机务室 :文钟华
通信室 :李志尧 
======网络查询完毕!====== 
我想读取的结果是:2010年03月22日
刘铭
2010年03月22日
蒋林洁就是找日期时间和网络室后面的人名
请大家帮给个代码,本人新手,谢谢!

解决方案 »

  1.   

    谢谢你,html代码:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title>排班表</title>
    <style type="text/css">
    <!--
    .STYLE7 {font-size: 12px}
    .STYLE10 {
    font-size: 14px;
    color: #333333;
    font-weight: bold;
    }
    body {
    margin-top: 3px;
    margin-left: 1px;
    }
    -->
    </style>
    </head><body>
    <table width="501" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#000000">
      
      <tr>
        <td background="/t.gif" bgcolor="#D5D9FB" class="STYLE7">======2010年03月22日======<br />
    空管站  :谭新四<br />
    航管部  :凌权<br />观测室  :柯燕琼/黎建红<br />
    网络部  :刘铭<br />
    机务室  :刘军<br />
    通信室  :陆涛<br />======网络查询完毕!======<br />
    </td>
      </tr>
      <tr>
        <td bgcolor="#FFFFFF" class="STYLE7">======2010年03月23日======<br />
    空管站  :黄细如<br />
    航管部  :王伟华<br />网络部  :蒋林洁<br />
    机务室  :文钟华<br />
    通信室  :李志尧 梁毅<br />======网络查询完毕!======<br />
    </td>
      </tr>
    </table>
    <div align="left"></div>
    </body>
    </html>
      

  2.   

    $html = '
    ======2010年03月22日======
    空管站 :谭新四
    航管部 :凌权观测室 :柯燕琼/黎建红
    网络部 :刘铭
    机务室 :刘军
    通信室 :陆涛
    ======网络查询完毕!============2010年03月23日======
    空管站 :黄细如
    航管部 :王伟华网络部 :蒋林洁
    机务室 :文钟华
    通信室 :李志尧 
    ======网络查询完毕!====== 
    ';
    preg_match_all('/(\d{4}年\d{2}月\d{2}日).*网络部 :(.*)\s/Us',$html,$m);
    foreach ($m[1] as $i => $v) {
    echo $v."\n".$m[2][$i]."\n";
    }
      

  3.   

    $html = '
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title>排班表</title>
    <style type="text/css">
    <!--
    .STYLE7 {font-size: 12px}
    .STYLE10 {
        font-size: 14px;
        color: #333333;
        font-weight: bold;
    }
    body {
        margin-top: 3px;
        margin-left: 1px;
    }
    -->
    </style>
    </head><body>
    <table width="501" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#000000">
      
      <tr>
        <td background="/t.gif" bgcolor="#D5D9FB" class="STYLE7">======2010年03月22日======<br />
    空管站  :谭新四<br />
    航管部  :凌权<br />观测室  :柯燕琼/黎建红<br />
    网络部  :刘铭<br />
    机务室  :刘军<br />
    通信室  :陆涛<br />======网络查询完毕!======<br />
    </td>
      </tr>
      <tr>
        <td bgcolor="#FFFFFF" class="STYLE7">======2010年03月23日======<br />
    空管站  :黄细如<br />
    航管部  :王伟华<br />网络部  :蒋林洁<br />
    机务室  :文钟华<br />
    通信室  :李志尧 梁毅<br />======网络查询完毕!======<br />
    </td>
      </tr>
    </table>
    <div align="left"></div>
    </body>
    </html>
    ';
    preg_match_all('/(\d{4}年\d{2}月\d{2}日).*网络部  :(.*)</Us',$html,$m);
    foreach ($m[1] as $i => $v) {
    echo $v."\n".$m[2][$i]."\n";
    }
      

  4.   

     preg_match_all('/(\d{4}年\d{2}月\d{2}日).*[^<]网络部\s*:(.*)</Us',$html,$m); 
      foreach ($m[1] as $i => $v) {  
       echo $v."\n".$m[2][$i]."\n";
      }呵呵 借鉴
      

  5.   

    <?php
    $sContent = file_get_contents("phpBaseForum.html");
    $sPattern = "/<td.*class=\"STYLE7\">[=]+(.*?)[=]+/i";
    $sPatternName = "/网络部\s*[:]*\s*(.*?)<br\s*\/>/i";
    preg_match_all($sPattern, $sContent, $aMatch);
    preg_match_all($sPatternName, $sContent, $aMatchName);
    print_r($aMatch[1]);
    print_r($aMatchName[1]);
    ?>
      

  6.   

    昆虫犀利啊,谢谢了!给分
    我是从文件读出的
    所以代码如下$fp=fopen("week.html","r"); //只读打开文件
    $str=fread($fp,filesize("week.html"));//读取文件中内容preg_match_all('/(\d{4}年\d{2}月\d{2}日).*网络部  :(.*)</Us',$str,$m);
    foreach ($m[1] as $i => $v) {
        echo $v."\n".$m[2][$i]."\n";