preg_match_all('/(<tr>.*?<\/tr>)/is',$str,$ar);//get tr datapreg_match_all('/(<td>.*?<\/td>)/is',$str,$ar);//get td data

解决方案 »

  1.   

    谢谢zeroleonhart(Strong Point:Algorithm),你理解错我的意思了。
    我是要先得到每一行的数据,然后根据条件判断,再从相应行找出各个td的数据。需要先把各行赋数组,再去数组中找td中的数据。
      

  2.   

    preg_match_all('/(<tr>.*?<\/tr>)/is',$str,$trar);preg_match_all('/(<td>.*?<\/td>)/is',$trar[$i],$tdar);
      

  3.   

    preg_match_all('/(<tr>.*?<\/tr>)/is',$str,$trar);
    这个正则<td></td>标签应该也过滤掉了吧,按你这两个正则我取出的值是空的
      

  4.   

    is是做什么的?我这样写的,结果是空:
    preg_match_all('/(<tr>.*?<\/tr>)/is', $vars[4],$trs);
    preg_match_all('/(<td>.*?<\/td>)/is', $trs[2],$tds);