\r?optionally matches a carriage return (ASCII 13)
\na line-feed (newline) character (ASCII 10)
\r?optionally matches a carriage return (ASCII 13)
\na line-feed (newline) character (ASCII 10)
Group 1(.*(?:\r?\n(?!\r?\n).*)*) .*any character (except for line terminators), repeated any number of times
Non-Capturing Group(?:\r?\n(?!\r?\n).*)* *repeats the group contents below any number of times:
\r?optionally matches a carriage return (ASCII 13)
\na line-feed (newline) character (ASCII 10)
Negative Lookahead(?!\r?\n) \r?optionally matches a carriage return (ASCII 13)
\na line-feed (newline) character (ASCII 10)
.*any character (except for line terminators), repeated any number of times
\r?optionally matches a carriage return (ASCII 13)
\na line-feed (newline) character (ASCII 10)
\r?optionally matches a carriage return (ASCII 13)
\na line-feed (newline) character (ASCII 10)
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