注意正则表达式的懒惰匹配和贪婪匹配。
在如下位置加入大写U,是匹配多条的tr。如果没有,则从第一行一直匹配到最后一行。只有一条数据
代码如下
$str='[';
$data = file_get_contents('D:\1.txt');
preg_match_all("/<tr[\w\W]*>([\w\W]*)<\/tr>/iU", $data, $media);
$first_data=$media[0];
preg_match_all('/<th[\w\W]*>([\w\W]*)<\/th>/iU',$first_data[0],$names);
for ($i=1;$i<=count($first_data)-1;$i++) {
preg_match_all('/<td[\w\W]*>([\w\W]*)<\/td>/iU',$first_data[$i],$values);
$str=$str.'{';
for ($j=0;$j<=count($values[1])-1;$j+&