import re pattern = re.compile( r""" [\t ]*(?P\w+)[\t ]*=[\t ]* (?: "(?P[^"]*)" | '(?P[^']*)' | `(?P[^`]*)` | (?!["'`])(?P[^\#\r\n]*?) ) [\t ]*(?:\#[^\r\n]*)?(?:\r?\n|$) """, flags=re.UNICODE | re.VERBOSE, ) ignored_line = re.compile(r"[\t ]*(?:\#[^\r\n]*)?(?:\r?\n|$)")