^start of line
Group project(?<project>\w+) \w+any word character, repeated at least once
-the literal - (4510 / 558 / 2D16)
Group core(?<core>\d+\.x) \d+a digit, repeated at least once
\.the literal . (4610 / 568 / 2E16)
xthe literal x (12010 / 1708 / 7816) (case sensitive)
-the literal - (4510 / 558 / 2D16)
\d+a digit, repeated at least once
\.the literal . (4610 / 568 / 2E16)
Group patch(?<patch>[\dx]+) +matches at least one character from the set below:
\da digit
xthe literal x (12010 / 1708 / 7816) (case sensitive)
?matches at most one character from the set below:
-the literal - (4510 / 558 / 2D16)
\.the literal . (4610 / 568 / 2E16)
Group extra(?<extra>[^\.]+)? ?repeats the group contents below at most once:
Negated Character Class[^\.]+ +matches at least one character outside the set below:
\.the literal . (4610 / 568 / 2E16)
\.the literal . (4610 / 568 / 2E16)
tarthe literal text tar (case sensitive) \.the literal . (4610 / 568 / 2E16)
gzthe literal text gz (case sensitive) tgzthe literal text tgz (case sensitive) $end of line
the literal ↵ (1010 / 128 / A16)
m modifier: multiline. Causes ^ and $ to match the start and end of each line, not only the start and end of the string
g modifier: global. Finds all matches instead of stopping after the first