qubed/src/python/qubed/convert.py
2025-02-18 17:50:28 +00:00

23 lines
819 B
Python

def parse_key_value_pairs(text: str):
result = {}
text = text.replace("}{", ",") # Replace segment separators
text = text.replace("{", "").replace("}","").strip() # Remove leading/trailing braces
for segment in text.split(","):
if "=" not in segment: print(segment)
key, values = segment.split("=", 1) # Ensure split only happens at first "="
values = values.split("/")
result[key] = values
return result
def parse_fdb_list(f):
for line in f.readlines():
# Handle fdb list normal
if line.startswith("{"):
yield parse_key_value_pairs(line)
# handle fdb list --compact
if line.startswith("retrieve,") and not line.startswith("retrieve,\n"):
line = line[9:]
yield parse_key_value_pairs(line)