Небольшой трик с регулярными выражениями который редко вижу в чужом коде.
Допустим, вам нужно распарсить простой текст и вытащить оттуда пары имя+телефон. Вернуть всё это надо в виде списка словарей. Возьмем очень простой пример текста.
>>> 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
Merck seeks first U.S. authorization for COVID-19 pill
Merck said it has applied for U.S. emergency use authorization for its tablet to treat mild-to-moderate patients of COVID-19, putting it on course to become the first oral antiviral medication for the disease.
#COVID#Merck#COVIDTablet#News#Reuters
Subscribe: http://smarturl.it/reuterssubscribe
Reuters brings you the latest business, finance and breaking news video from around the globe. Our reputation for accuracy and impartiality is unparalleled.
Get the latest news on: http://reuters.com/
Follow Reuters on Facebook: https://www.facebook.com/Reuters
Follow Reuters on Twitter: https://twitter.com/Reuters
Follow Reuters on Instagram: https://www.instagram.com/reuters/?hl=en
➖@reutersworldchannel➖
Merck Summer Camp 2026 in Germany 🇩🇪 (Fully Funded) 🫡📢
Visit: https://opportunitiescorners.com/merck-innovation-cup-summer-camp/
The Summer Camp will take Place in Frankfurt in August 2026📍. Open to all Nationals.
The Program Covers Airfare, Accommodation and Food Expenses. 🎉😎
Deadline: 31st Jan 2026
#Merck#SummerCamp#Germany#OpportunitiesCorners
ЛЕКАРСТВЕННАЯ ТЕРАПИЯ В ОНКОЛОГИИ МОСКВЫ: ВЗГЛЯД В БУДУЩЕЕ
Уважаемые коллеги!
⚡ Напоминаем, что продолжается регистрация на конференцию "ЛЕКАРСТВЕННАЯ ТЕРАПИЯ В ОНКОЛОГИИ МОСКВЫ: ВЗГЛЯД В БУДУЩЕЕ".
С нетерпением ждем встречи с каждым участником 🫵
Уверены, этот день будет максимально плодотворным и интересным. Не упустите возможность принять участие в живом общении и дискуссии с нашими экспертами!
📅Дата мероприятия: 25 марта 2023 г.
⏰Время мероприятия: с 10:00 до 18:00
📍Место проведения: отель Holiday Inn Moscow Sokolniki, г. Москва, Русаковская улица, д. 24
📌Регистрация и трансляция на сайте: https://medicalconference.ru/webinar_250323
🤝Партнеры: АО «Астеллас Фарма», НТК Мерк Россия, ООО «Эйсай»
#МосковскоеОнкологическоеОбщество
#ЛекарственнаяТерапиявОнкологии
#Astellas
#Merck
#Eisai
❗ВНИМАНИЕ❗ВАЖНАЯ ИНФОРМАЦИЯ❗
Московское онкологическое общество 25 марта с 10:00 до 18:00 проводит конференцию «Лекарственная терапия в онкологии Москвы: взгляд в будущее».
Не упустите возможность личного присутствия столь важном мероприятии с участием ведущих российских экспертов в области лекарственного лечения онкологических заболеваний. Участники имеют уникальную возможность лично задать интересующие вопросы нашим экспертам и получить ответы профессионалов своего дела!
Места ограничены!
📍Место проведения: отель Holiday Inn Moscow Sokolniki, г. Москва, Русаковская улица, д. 24
📌Регистрация и трансляция на сайте: https://medicalconference.ru/webinar_250323
🤝Партнеры: АО «Астеллас Фарма», НТК Мерк Россия, ООО «Эйсай»
Программа мероприятия в следующем посте👉
#МосковскоеОнкологическоеОбщество
#ЛекарственнаяТерапиявОнкологии
#Astellas
#Merck
#Eisai
Donc quand 2 grands fabricants de médicaments génériques en #Inde stoppent leur essai du #Molnupiravir de #Merck, parce qu'il ne marche pas sur les #Covid19 modérés...
Olivier #Véran en commande 50.000 doses. 😅
D'ailleurs Merck a arrêté lui-même son essai sur les patients #Covid hospitalisés (pour tester en outpatients)... La boussole sud quoi https://www.reuters.com/business/healthcare-pharmaceuticals/aurobindo-pharma-stop-molnupiravir-trial-moderate-covid-19-patients-2021-10-08/https://www.businesswire.com/news/home/20210415005258/en/https://www.lavoixdunord.fr/1090028/article/2021-10-26/c-est-quoi-le-molnupiravir-medicament-anti-covid-dont-la-france-commande-50-000