^start of line
Negated Character Class[^:]* *matches any number of characters outside the set below:
:the literal : (5810 / 728 / 3A16)
:the literal : (5810 / 728 / 3A16)
\s*a Unicode whitespace character, repeated any number of times
-?optionally matches the literal - (4510 / 558 / 2D16)
\d+a Unicode decimal digit, repeated at least once
Non-Capturing Group(?:\.\d+)? ?repeats the group contents below at most once:
\.the literal . (4610 / 568 / 2E16)
\d+a Unicode decimal digit, repeated at least once
,the literal , (4410 / 548 / 2C16)
\D*?any character that is not a Unicode decimal digit, repeated any number of times
-?optionally matches the literal - (4510 / 558 / 2D16)
\d+a Unicode decimal digit, repeated at least once
Non-Capturing Group(?:\.\d+)? ?repeats the group contents below at most once:
\.the literal . (4610 / 568 / 2E16)
\d+a Unicode decimal digit, repeated at least once
\D*?any character that is not a Unicode decimal digit, repeated any number of times
-?optionally matches the literal - (4510 / 558 / 2D16)
\d+a Unicode decimal digit, repeated at least once
Non-Capturing Group(?:\.\d+)? ?repeats the group contents below at most once:
\.the literal . (4610 / 568 / 2E16)
\d+a Unicode decimal digit, repeated at least once
g modifier: global. Finds all matches instead of stopping after the first
m modifier: multiline. Causes ^ and $ to match the start and end of each line, not only the start and end of the string