Как составить регулярное выражение PHP?
Вот так можно получить ассоциативный массив цифры 'num', а в скобочках 'x';'y'$re = "/:(?<num>[\\d\\.]+)\\(?(?:(?<x>\\d+)\\;(?<y>\\d+))?\\)?\\s?/"; 
$str = ":442.6(280;161) :442.6 :0 :1.6"; 
preg_match_all($re, $str, $matches);
Я люблю онлайн тестеры типа такого:
https://regex101.com/
Если подход к решению задачи не принципиален,можете воспользоваться языковой конструкцией list() + ф-я explode()
list($value1,$value2,$value3 ) = explode(":",$str);
UPD: В результате получится три независимых переменных $value1,$value2,$value3,куда запишутся части строки