«Стандартные» регулярные выражения не могут анализировать этот текст в точности так, как вы описали. Этот синтаксический анализ требует некоторого context , который не может быть выражен с помощью регулярных выражений. Например, при получении первого «-», как выражение не заканчивается?
Из головы я могу прийти только с расширенными регулярными выражениями Perl, которые разрешают синтаксический анализ подвыражений, но это будет нелегко, так как вам нужно посчитать вхождения «:» и «-», чтобы соответствовать точно последний.