^start of line
\d+a digit, repeated at least once
Non-Capturing Group(?:,\d+)* *repeats the group contents below any number of times:
,the literal , (4410 / 548 / 2C16)
\d+a digit, repeated at least once
\r?optionally matches a carriage return (ASCII 13)
\na line-feed (newline) character (ASCII 10)
Negated Character Class[^\d\r\n]* *matches any number of characters outside the set below:
\da digit
\ra carriage return (ASCII 13)
\na line-feed (newline) character (ASCII 10)
Non-Capturing Group(?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) Janthe literal text Jan (case sensitive) Febthe literal text Feb (case sensitive) Marthe literal text Mar (case sensitive) Aprthe literal text Apr (case sensitive) Maythe literal text May (case sensitive) Junthe literal text Jun (case sensitive) Julthe literal text Jul (case sensitive) Augthe literal text Aug (case sensitive) Septhe literal text Sep (case sensitive) Octthe literal text Oct (case sensitive) Novthe literal text Nov (case sensitive) Decthe literal text Dec (case sensitive) \d{4}a digit, repeated exactly 4 times
Negated Character Class[^\d\r\n]* *matches any number of characters outside the set below:
\da digit
\ra carriage return (ASCII 13)
\na line-feed (newline) character (ASCII 10)
$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