def __get_raw_list(self): pattern = ("(?:" + "|".join(re.escape(v) for v in self.__list_delimiters) + ")") return list(unescaped_split(pattern, self.value, use_regex=True))
def __prepare_dict(self): # We must keep order here, user can drop it later. self.__dict = OrderedDict() for elem in self.__get_raw_list(): key_val = unescaped_split(self.__dict_delimiter, elem, max_split=1) if self.__strip_whitespaces: key_val = [unescaped_strip(item) for item in key_val] key_val = [unescape(item) for item in key_val] if not any(item != "" for item in key_val): continue if len(key_val) < 2: self.__dict[key_val[0]] = "" else: self.__dict[key_val[0]] = key_val[1]