Небольшой трик с регулярными выражениями который редко вижу в чужом коде.
Допустим, вам нужно распарсить простой текст и вытащить оттуда пары имя+телефон. Вернуть всё это надо в виде списка словарей. Возьмем очень простой пример текста.
>>> text = '''
>>> Alex:8999123456
>>> Mike:+799987654
>>> Oleg:+344456789
>>> '''
Соответственно, для выделения нужных элементов будем использовать группы. Получится такой паттерн:
(\w+):([\d+]+)
Как мы будем формировать словарь из найденных групп?
>>> import re
>>> results = []
>>> for match in re.finditer(r"(\w+):([\d+]+)", text):
>>> results.append({
>>> "name": match.group(1),
>>> "phone": match.group(2)
>>> })
>>> print(results)
[{'name': 'Alex', 'phone': '8999123456'}, ...]
Можно немного сократить запись используя zip
>>> results = []
>>> for match in re.finditer(r"(\w+):([\d+]+)", text):
>>> results.append(dict(zip(['name', 'phone'], match.groups())))
Но есть способ лучше! Это именованные группы в regex. Можно в паттерне указать имя группы и результат сразу забрать в виде словаря.
>>> for match in re.finditer(r"(?P<name>\w+):(?P<phone>[\d+]+)", text):
>>> results.append(match.groupdict())
То есть всё что я сделал, это добавил в начале группы (внутри сбокочек) такую запись:
(?P<group-name>...)
Теперь найденная группа имеет имя и можно обратиться к ней как к элементу списка
>>> name = match['name']
Либо забрать сразу весь словарь методом groupdict()
>>> match.groupdict()
#tricks#regex
🟢Le 8e Sommet de la Communauté politique européenne s'est ouvert ce dimanche 3 mai à #Erevan
Un événement qui confirme les orientations actuelles de la politique étrangère arménienne. Un sommet riche en symboles, à quelques kilomètres seulement des frontières russes et iraniennes.
🗣Plus de détails avec notre reporter Antoine Cléraux.
RT en français • Osez questionner !
🇦🇲 Les habitants d'#Erevan ont participé à la traditionnelle marche aux flambeaux organisée à l'occasion du 111e anniversaire du génocide des Arméniens dans l'Empire ottoman.
🇦🇲 Le Parlement européen a désigné le 24 avril journée de commémoration des victimes du génocide arménien dans l’Empire ottoman. Ce jour-là, en 1915, plus de 800 membres de l’intelligentsia arménienne ont été arrêtés à Istanbul puis assassinés. Au total, plus de 1,5 million d’Arméniens sont morts à la suite dans les persécutions.
RT en français • Osez questionner !
🟢Le 8e Sommet de la Communauté politique européenne s'est ouvert ce dimanche 3 mai à #Erevan
Un événement qui confirme les orientations actuelles de la politique étrangère arménienne. Un sommet riche en symboles, à quelques kilomètres seulement des frontières russes et iraniennes.
🗣Plus de détails avec notre reporter Antoine Cléraux.
RT en français • Osez questionner !
🟢Le 8e Sommet de la Communauté politique européenne s'est ouvert ce dimanche 3 mai à #Erevan
Un événement qui confirme les orientations actuelles de la politique étrangère arménienne. Un sommet riche en symboles, à quelques kilomètres seulement des frontières russes et iraniennes.
🗣Plus de détails avec notre reporter Antoine Cléraux.
RT en français • Osez questionner !
🗣Depuis l’Arménie, Emmanuel #Macron surveille la situation géopolitique avec attention
La visite d’État d’Emmanuel Macron à #Erevan a largement été marquée par la question d’un rapprochement, voire d’une future adhésion de l’Arménie à l’Union européenne.
Mais ce n’était pas le seul sujet abordé : le président français a longuement réagi aux dernières actualités internationales. Le point avec Nadège Abderrazak, notre correspondante à Paris.
RT en français • Osez questionner !
🇬🇧🇺🇦Londres pourrait se joindre au plan européen d’aide à l’Ukraine
▪️Le Royaume-Uni envisage de rejoindre le programme de prêts de l’Union européenne en faveur de l’#Ukraine, d’un montant total de 90 milliards d’euros. Des discussions sont attendues lors du sommet de la Communauté politique européenne à #Erevan.
▪️Le dispositif, approuvé fin avril pour la période 2026-2027 avec un premier versement prévu en mai, vise à financer les besoins de défense de Kiev. #Londres y voit à la fois un soutien militaire à l’Ukraine et une opportunité pour son industrie, déjà incluse parmi les fournisseurs potentiels aux côtés d’entreprises européennes.
RT en français • Osez questionner !
🇬🇧🇺🇦Londres pourrait se joindre au plan européen d’aide à l’Ukraine
▪️Le Royaume-Uni envisage de rejoindre le programme de prêts de l’Union européenne en faveur de l’#Ukraine, d’un montant total de 90 milliards d’euros. Des discussions sont attendues lors du sommet de la Communauté politique européenne à #Erevan.
▪️Le dispositif, approuvé fin avril pour la période 2026-2027 avec un premier versement prévu en mai, vise à financer les besoins de défense de Kiev. #Londres y voit à la fois un soutien militaire à l’Ukraine et une opportunité pour son industrie, déjà incluse parmi les fournisseurs potentiels aux côtés d’entreprises européennes.
RT en français • Osez questionner !
🎷🎹« La Bohème » s'invite à un dîner d'État
▪️À #Erevan, la diplomatie a pris des airs de scène : Emmanuel #Macron au micro, Nikol #Pachinian à la batterie. Ensemble, ils ont repris « La Bohème » lors d’un dîner officiel.
▪️Un moment inattendu, entre protocole et improvisation, où les chefs d’État ont troqué les discours pour la musique.
▪️Le duo qu’on n’attendait pas… mais qui a clairement volé la vedette.
Source : réseaux sociaux
RT en français • Osez questionner !
Армянское радио сообщило важнейшую новость - в Ереван прилетел позитивный организатор и... начал организовывать! #positive#city#quest#engineofemotions#erevan#armenia
#Iran: Prima visita del Presidente #Pezeshkian in #Armenia, pochi giorni dopo l’accordo di pace tra #Baku e #Erevan negli #USA. “Rispetto dell’integrità territoriale armena, preoccupati per forze straniere vicino ai confini".