code: def xml_get_tag(xml, tag, parent_tag=None, multi_line=False):
      
      expr_str = '[<:]' + tag + '.*?>(?P<matched_text>.+?)<'
      if parent_tag:
          expr_str = '[<:]' + parent_tag + '.*?>.*?' + expr_str
      expr = re.compile(expr_str, re.DOTALL | re.IGNORECASE)
      if multi_line:
          return expr.findall(xml)
      else:
          if expr.search(xml):
              return expr.search(xml).group('matched_text').strip()
          else:
              return None
docs: Returns the tag data for the first instance of the named tag, or for all instances if multi is true.
      If a parent tag is specified, then that will be required before the tag.