^start of line
\(the literal ( (4010 / 508 / 2816)
\)the literal ) (4110 / 518 / 2916)
Group gtin14(?P<gtin14>[0-9]{14}) {14}matches exactly 14 characters from the set below:
0-9one character from 0 (4810) to 9 (5710)
\(the literal ( (4010 / 508 / 2816)
\)the literal ) (4110 / 518 / 2916)
Group serial_number(?P<serial_number>[0-9]{1,20}) Character Class[0-9]{1,20} {1,20}matches between 1 and 20 characters from the set below:
0-9one character from 0 (4810) to 9 (5710)
\(the literal ( (4010 / 508 / 2816)
\)the literal ) (4110 / 518 / 2916)
Group expiration_date(?P<expiration_date>[0-9]{6}) {6}matches exactly 6 characters from the set below:
0-9one character from 0 (4810) to 9 (5710)
\(the literal ( (4010 / 508 / 2816)
\)the literal ) (4110 / 518 / 2916)
Group lot(?P<lot>[a-zA-Z0-9]{1,20}) Character Class[a-zA-Z0-9]{1,20} {1,20}matches between 1 and 20 characters from the set below:
a-zone character from a (9710) to z (12210) (case sensitive)
A-Zone character from A (6510) to Z (9010) (case sensitive)
0-9one character from 0 (4810) to 9 (5710)
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