<table class="ntable">
<tbody>
<tr>
<th class="tx">序号</th>
<th>项目1</th>
<th>项目2</th>
<th>项目3</th>
<th>项目4</th>
<th>项目5</th>
<th>项目6</th>
</tr>
<tr>
<td class="tx">1</td>
<td>内容1</td>
<td>内容2</td>
<td>内容3</td>
<td>内容4</td>
<td>内容5</td>
<td>内容6</td>
</tr>
<tr>
<td class="tx">2</td>
<td>内容1-1</td>
<td>内容2-2</td>
<td>内容3-3</td>
<td>内容4-4</td>
<td>内容5-5</td>
<td>内容6-6</td>
</tr>
<tr>
</tbody>
</table>
我要提取项目2和项目3两列数据,PHP应该怎么处理
<?php
header("Content-Type: text/html; charset=gb2312");
$str='
<table class="ntable">
<tbody>
<tr>
<th class="tx">序号</th>
<th>项目1</th>
<th>项目2</th>
<th>项目3</th>
<th>项目4</th>
<th>项目5</th>
<th>项目6</th>
</tr>
<tr>
<td class="tx">1</td>
<td>内容1</td>
<td>内容2</td>
<td>内容3</td>
<td>内容4</td>
<td>内容5</td>
<td>内容6</td>
</tr>
<tr>
<td class="tx">2</td>
<td>内容1-1</td>
<td>内容2-2</td>
<td>内容3-3</td>
<td>内容4-4</td>
<td>内容5-5</td>
<td>内容6-6</td>
</tr>
<tr>
</tbody>
</table>';
$pattern='/\s+/';
$str=preg_replace($pattern,'', $str);
$pattern='/<tr><tdclass="tx">(.*?)<\/td><td>(.*?)<\/td><td>(.*?)<\/td><td>(.*?)<\/td><td>(.*?)<\/td><td>(.*?)<\/td><td>(.*?)<\/td><\/tr>/i';
preg_match_all($pattern, $str,$match);
print_r($match);
if($match[3]){//项目2的内容
print_r($match[3]);
}
if($match[4]){//项目3的内容
print_r($match[4]);
}
?>
结果如下: