Если у вас есть проблема, и вы собираетесь решать ее с использованием регулярных выражений, то у вас есть две проблемы.
Боян, но всегда в тему.
preg_match_all ( '/<a[^>]+?[^>]+>(.*?)<\/a>/i' , $txt , $matches);
$info['TEST1:'] = str_replace("TEST1:","",$matches[1][0]);
$info['TEST2:'] = str_replace("TEST2:","",$matches[1][1]);
preg_match ( '/<span[^>]+?[^>]+>(.*?)<\/span>/i' , $txt , $matches);
$info['INFO:'] = str_replace("INFO:","",$matches[1]);
print_r($info);
Для разбиения даты все же используйте explode(). Не надо пихать регэкспы везде и всюду.