Небольшой трик с регулярными выражениями который редко вижу в чужом коде.
Допустим, вам нужно распарсить простой текст и вытащить оттуда пары имя+телефон. Вернуть всё это надо в виде списка словарей. Возьмем очень простой пример текста.
>>> 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
Друзья!
С удовольствием делимся с вами фрагментом нашего минувшего концерта в ЦДУ РАН🤗. Для вас – Алексей Чеботарев и мужской хор Logos с нежной, лиричной, вдохновляющей песней о поиске своей любви, невзирая на время и расстояние, "No importa la distancia" в аранжировке Максима Котогарова.
Поделитесь и вы с нами в комментариях вашими эмоциями и впечатлениями от концерта 🙏
А для тех, кто не смог присоединиться к нам вчера и кто захотел увидеться с нами снова, – ссылочка на наш Пасхальный концерт в Доме Музыки 23 апреля😉: https://www.mmdm.ru/reserve-ticket/8793/
#хорlogos#концерт#акапелла#цдуран#домученых#noimportaladistancia#RickyMartin
#ммдм#доммузыки
Музыкальные новости 🎵
1️⃣Ricky Martin — первый обладатель Latin Icon Award
На церемонии MTV VMA 2025 в Нью-Йорке легендарный пуэрториканец Рики Мартин получил первую в истории награду Latin Icon Award.
Трофей вручила Джессика Симпсон, а J Balvin почтил его карьеру, исполнив один из хитов.
«40 лет, и я всё ещё здесь. Пусть страны объединяются, а музыка живёт»
— сказал артист, посвятив премию своим детям.
За карьеру он продал более 70 млн альбомов и собрал свыше 180 наград.
2️⃣Мексика — столица латинской музыки
Аргентинский продюсер Эдуардо Басага́нья уверен: будущее музыки на испанском языке решается именно в Мексике.
Он запустил +VIVO — первую в Латинской Америке платформу цифровых концертов, а теперь развивает проект первой музыкальной метавселенной региона.
Сегодня Мексика входит в десятку крупнейших музыкальных рынков мира: доходы от стриминга превышают 1,5 млрд долларов в год. Именно отсюда на мировую сцену вышли такие артисты, как Peso Pluma.
3️⃣Sech выпускает танцевальный гимн Novio No
Панамский певец Sech вернулся с треком в стиле dancehall. Песня о свободе и уверенности звучит как гимн празднования жизни, а клип подчёркивает близость к слушателям.
В последние месяцы артист сотрудничал с Danny Ocean, Mora и другими, а теперь отмечен двумя номинациями на Premios Juventud 2025.
4️⃣El Alfa и его новый хит JamRock
Доминиканский «король дембоу» El Alfa представил свежий сингл, клип снят в Санто-Доминго. В августе он стал гостем на концерте Bad Bunny в Пуэрто-Рико, а сейчас номинирован на Premios Juventud за трек с Black Eyed Peas и Becky G.
По словам El Alfa, это признание глобальной силы доминиканской музыки.
5️⃣Tiago PZK представляет балладу Domingo
Аргентинский певец Tiago PZK выпустил эмоциональную песню в стиле ностальгической кумбии. Domingo — о тоске и воспоминаниях, которые сильнее всего ощущаются в воскресенье.
Трек продолжает успешный год Tiago: два аншлага в Movistar Arena в Буэнос-Айресе и масштабный тур по Латинской Америке и Европе.
#RickyMartin#JBalvin#Mexico#EduardoBasagaña#Sech#ElAlfa#TiagoPZK#МузыкаLatAm#PremiosJuventud#МузыкаЛАТАМ
👉Всегда свежие новости о странах Латинской Америки!