^start of line
\s*a Unicode whitespace character, repeated any number of times
\w+a Unicode word character, repeated at least once
\r?optionally matches a carriage return (ASCII 13)
\na line-feed (newline) character (ASCII 10)
Negated Character Class[^\S\r\n]* *matches any number of characters outside the set below:
\Sany character that is not Unicode whitespace
\ra carriage return (ASCII 13)
\na line-feed (newline) character (ASCII 10)
#the literal # (3510 / 438 / 2316)
\(the literal ( (4010 / 508 / 2816)
.*any Unicode character (except for line terminators), repeated any number of times
Non-Capturing Group(?:\r?\n(?![^\S\r\n]*\w).*)* *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(?![^\S\r\n]*\w) Negated Character Class[^\S\r\n]* *matches any number of characters outside the set below:
\Sany character that is not Unicode whitespace
\ra carriage return (ASCII 13)
\na line-feed (newline) character (ASCII 10)
\wa Unicode word character
.*any Unicode 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)
Negated Character Class[^\S\r\n]+ +matches at least one character outside the set below:
\Sany character that is not Unicode whitespace
\ra carriage return (ASCII 13)
\na line-feed (newline) character (ASCII 10)
\w+a Unicode word character, repeated at least once
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