u modifier: unicode case. Applies case-insensitive matching to Unicode characters according to the Unicode Standard
U modifier: Unicode. Enables built-in character classes and case-insensitive matching to use Unicode rules
m modifier: multiline. Causes ^ and $ to match the start and end of each line, not only the start and end of the string
g modifier: global. Finds all matches instead of stopping after the first