^start of line
-?optionally matches the literal - (4510 / 558 / 2D16)
\d+a digit, repeated at least once
\.?optionally matches the literal . (4610 / 568 / 2E16)
\d*?a digit, repeated any number of times
Group 1([1-9].*?|0[1-9].*?|0$) 1-9one character from 1 (4910) to 9 (5710)
.*?any character (except for line terminators), repeated any number of times
0the literal 0 (4810 / 608 / 3016)
1-9one character from 1 (4910) to 9 (5710)
.*?any character (except for line terminators), repeated any number of times
0the literal 0 (4810 / 608 / 3016)
$end of line
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