У меня небольшая проблема с регулярным выражением.
Вот пример текста для разбора:
output = """
country : USA
zzzzzzz
continent : Americ
eeeeeee
------
country : China
zzzzzzz
continent : Asia
planet : Earth
-------
country : Izbud
zzzzzzz
continent : Gladiora
zzzzzzz
zzzzzzz
planet : Mars
"""
Я хочу разобрать это и вернуть страну, континент и, в конечном итоге, планету.
Итак, я сделал регулярное выражение:
results = re.findall(
r"""(?mx)
^country\s:\s*(.+)\s
(?:^.+\s)*?
^continent\s:\s*(.+)\s
(?:^.+\s)*?
(?:^planet\s:\s*(.+)\s)*?
""",output)
но возвращаемое значение:
[('USA', 'Americ', ''), ('China', 'Asia', ''), ('Izbud', 'Gladiora', '')]
И я не знаю, где мое регулярное выражение не так?
Если у кого-то есть идея,
спасибо.