Вдохновленный теперь вопросом, который был удален; если задано регулярное выражение с именованными группами, существует ли метод findall
, который возвращает список dict
с именованными группами захвата вместо списка tuple
?
Дано:
>>> import re
>>> text = "bob sue jon richard harry"
>>> pat = re.compile('(?P<name>[a-z]+)\s+(?P<name2>[a-z]+)')
>>> pat.findall(text)
[('bob', 'sue'), ('jon', 'richard')]
Вместо этого следует:
[{'name': 'bob', 'name2': 'sue'}, {'name': 'jon', 'name2': 'richard'}]