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: unicode. Makes \w, \W, \b, \B, \d, \D, \s, and \S use Unicode semantics (redundant in Python 3)