^start of line
Negative Lookahead(?!.*\d+(?:\.\d+){2}) .*any character (except for line terminators), repeated any number of times
\d+a digit, repeated at least once
Non-Capturing Group(?:\.\d+){2} {2}repeats the group contents below exactly 2 times:
\.the literal . (4610 / 568 / 2E16)
\d+a digit, repeated at least once
\d*a digit, repeated any number of times
\.?optionally matches the literal . (4610 / 568 / 2E16)
\d*a digit, repeated any number of times
\/?optionally matches the literal / (4710 / 578 / 2F16)
\d*a digit, repeated any number of times
\.?optionally matches the literal . (4610 / 568 / 2E16)
\d*a digit, repeated any number of times
*matches any number of characters from the set below:
a-zone character from a (9710) to z (12210) (case sensitive)
$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