\!?optionally matches the literal ! (3310 / 418 / 2116)
\[the literal [ (9110 / 1338 / 5B16)
.*any character (except for line terminators), repeated any number of times
\]the literal ] (9310 / 1358 / 5D16)
\(the literal ( (4010 / 508 / 2816)
.*any character (except for line terminators), repeated any number of times
\)the literal ) (4110 / 518 / 2916)
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
U modifier: Ungreedy. Quantifiers are lazy by default. A trailing ? makes a quantifier greedy