Group pun1(?P<pun1>\d{3}) \d{3}a digit, repeated exactly 3 times
\s+any whitespace character, repeated at least once
Group pun2(?P<pun2>\d{6}) \d{6}a digit, repeated exactly 6 times
Group 3(\s+(?P<pun3>[01oO])(\s+(?P<pun4>\d{4}))?)? ?repeats the group contents below at most once:
\s+any whitespace character, repeated at least once
Group pun3(?P<pun3>[01oO]) 0the literal 0 (4810 / 608 / 3016)
1the literal 1 (4910 / 618 / 3116)
othe literal o (11110 / 1578 / 6F16) (case sensitive)
Othe literal O (7910 / 1178 / 4F16) (case sensitive)
Group 5(\s+(?P<pun4>\d{4}))? ?repeats the group contents below at most once:
\s+any whitespace character, repeated at least once
Group pun4(?P<pun4>\d{4}) \d{4}a digit, repeated exactly 4 times
\sany whitespace character
.*any character (except for line terminators), repeated any number of times
\sany whitespace character
Group amt(?P<amt>\d+\.\d\d) \d+a digit, repeated at least once
\.the literal . (4610 / 568 / 2E16)
\da digit
\da digit
\sany whitespace character
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