Вы можете найти все пары arg
/ value
, используя re.findall
, и построить словарь, разбив строки:
import re
s = '[ARG0: elephants] were [ARGM-TMP: first] [V: walk] [ARGM-DIR: up]'
d = re.findall(r'\[(ARG.*?\:*?)]', s)
dict([i.split(': ') for i in d])
# {'ARG0': 'elephants', 'ARGM-TMP': 'first', 'ARGM-DIR': 'up'}