^start of string
1-9one character from 1 (4910) to 9 (5710)
\d{5}a Unicode decimal digit, repeated exactly 5 times
1-9one character from 1 (4910) to 9 (5710)
\d{3}a Unicode decimal digit, repeated exactly 3 times
Group 1((0[1-9])|(1[0-2])) 0the literal 0 (4810 / 608 / 3016)
1-9one character from 1 (4910) to 9 (5710)
1the literal 1 (4910 / 618 / 3116)
0-2one character from 0 (4810) to 2 (5010)
Group 4(((0[1-9])|3[0-1])|(([1|2]\d)|3[0-1])) 1st Alternative((0[1-9])|3[0-1]) 0the literal 0 (4810 / 608 / 3016)
1-9one character from 1 (4910) to 9 (5710)
3the literal 3 (5110 / 638 / 3316)
0-1one character from 0 (4810) to 1 (4910)
2nd Alternative(([1|2]\d)|3[0-1]) Group 7(([1|2]\d)|3[0-1]) 1the literal 1 (4910 / 618 / 3116)
|the literal | (12410 / 1748 / 7C16)
2the literal 2 (5010 / 628 / 3216)
\da Unicode decimal digit
3the literal 3 (5110 / 638 / 3316)
0-1one character from 0 (4810) to 1 (4910)
\d{3}a Unicode decimal digit, repeated exactly 3 times
$end of string, or before its final line terminator
g modifier: global. Finds all matches instead of stopping after the first