code: def parse_key(string):
          
          special_characters = '$}[]:=+#`^?!@*&.'
          tokens = re.findall(r'"[^"]+"|[^{special_characters}]+'.format(special_characters=re.escape(special_characters)), string)
  
          def contains_special_character(token):
              return any((c in special_characters) for c in token)
  
          return [token if contains_special_character(token) else token.strip('"') for token in tokens]
docs: Split a key into path elements:
          - a.b.c => a, b, c
          - a."b.c" => a, QuotedKey("b.c") if . is any of the special characters: $}[]:=+#`^?!@*&.
          - "a" => a
          - a.b."c" => a, b, c (special case)
          :param str:
          :return: