PHP利用正则表达式抓取页面内table的内容

今天有个地方需要用到正则去抓取网页中table的内容,在网上找到一个比较好用的方法。下面以抓取微信文档中的一个表格的内容为例,记录一下这个方法

//php抓取网页表格
function catchTable()
{
	$fcontents = file_get_contents('https://pay.weixin.qq.com/wiki/doc/api/mch_bank.php?chapter=9_210&index=2');
	$table_data = preg_match_all('/<table[^>]*>(.*?) <\/table>/si',$fcontents,$match);
	$table_data = $match[0][0];
	
	$table_array = explode('<tr>',$table_data);
	$data = array();
	for($i=2;$i<count($table_array);$i++){
		$data[$i] = explode('</td>',$table_array[$i]);
		for($j = 0;$j<count($data[$i]);$j++){
			$data[$i][$j] = preg_replace('/\s(?=\s)/','',trim(strip_tags($data[$i][$j])));
		}
		array_pop($data[$i]);
	}   
	
	return $data;
}


书山有路勤为径 学海无涯苦作舟