^start of line
\s*a Unicode whitespace character, repeated any number of times
\[the literal [ (9110 / 1338 / 5B16)
Negated Character Class[^][]* *matches any number of characters outside the set below:
]the literal ] (9310 / 1358 / 5D16)
[the literal [ (9110 / 1338 / 5B16)
\]the literal ] (9310 / 1358 / 5D16)
Non-Capturing Group(?:\r?\n(?![^\S\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(?![^\S\r\n]*\[]$) 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 [ (9110 / 1338 / 5B16)
]the literal ] (9310 / 1358 / 5D16)
$end of line
.*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 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 [ (9110 / 1338 / 5B16)
]the literal ] (9310 / 1358 / 5D16)
$end of line
\s*a Unicode whitespace character, repeated any number of times
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