$re = '/([0-9]{1,2}:?(?:[0-9]{2})?)-([0-9]{1,2}:?(?:[0-9]{2})?)\s(AM|PM)/i';
$str = '@HOME 8:30-4:15 PM: Full analysis of Concur report (EFF) > Q1 report (Stan 5/6/15) > Sign-in Sheets (127 meetings)
@HUB 2:30-3:30 PM: Planning and meeting with Stanley Braxton
@HUB 9-4 PM, 6-8 PM: Ashfield HCPHUB configuration; (Old) expenses analysis from Stan; Gaining Concur access from Covis (Dawn)
';
preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0);
// Print the entire match result
var_dump($matches);
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for PHP, please visit: http://php.net/manual/en/ref.pcre.php