^start of line
Character Class[a-zA-Z]{3} {3}matches exactly 3 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)
\s+any whitespace character, repeated at least once
Character Class[A-Za-z]{3} {3}matches exactly 3 characters from the set below:
A-Zone character from A (6510) to Z (9010) (case sensitive)
a-zone character from a (9710) to z (12210) (case sensitive)
\s+any whitespace character, repeated at least once
\d{2}a digit, repeated exactly 2 times
\s+any whitespace character, repeated at least once
Group 1(2017|(?:19\d{2}|20\d{2})) 2017the literal text 2017 2nd Alternative(?:19\d{2}|20\d{2}) Non-Capturing Group(?:19\d{2}|20\d{2}) \d{2}a digit, repeated exactly 2 times
\d{2}a digit, repeated exactly 2 times
\s+any whitespace character, repeated at least once
.*any character (except for line terminators), repeated any number of times
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