Вы можете использовать несколько простых регулярных выражений:
$values = array();
if (preg_match_all("/<tr>(.*?)<\/tr>/is", $html, $matches)) {
foreach($matches[1] as $match) {
if (preg_match_all("/<td[^>]*>([^<]+)<\/td>/is", $match, $tds))
array_push($values, $tds[1]);
}
}
var_dump($values);
Гораздо проще, когда отдельные шаблоны вместо одного большого шаблона.