Небольшой трик с регулярными выражениями который редко вижу в чужом коде.
Допустим, вам нужно распарсить простой текст и вытащить оттуда пары имя+телефон. Вернуть всё это надо в виде списка словарей. Возьмем очень простой пример текста.
>>> 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
#STATISTIKA
"Oliy liga 2025/26" mavsumining uch turi ortda qoldi. Jamoamiz 3 ta shaharda o'tkazilgan tur uchrashuvlarida jami 9 uchrashuvda maydonga tushib, 8 bor g'alaba qozondi va 1 bor durang natija qayd etdi.
9 ta bahsda raqiblar darvozasini 58 bor ishg'ol qilishga erishdik. Keling kiritilgan gollar mualliflari va ularga assistentlik qilgan futzalchilar nomlarini surat orqali batafsil ko'rib chiqamiz.
Telegram|Facebook|Instagram | Uzum
2025-yil yanvar oyida O‘zbekistonda eng ko‘p yuklab olingan ilovalar quyidagilar bo‘ldi:
1. Temu (sentyabr oyidan beri Google Play va App Store’da yetakchilik qilmoqda).
2. ChatGPT - Google Play’da ikkinchi, App Store’da to‘rtinchi o‘rinni egalladi.
3. Telegram va Instagram eng mashhur messenjer va ijtimoiy tarmoq sifatida tan olindi.
4. Payme - Google Play’da beshinchi va App Store’da oltinchi o‘ringa joylashdi.
5. Soliq va Uzum Market - eng yuqori reytingga kirgan ikkita milliy ilova bo‘ldi.
Credits: @UchadiUxladi
👉Bizning barcha loyihalar | #statistika
#Statistika
🏗Qurilish ishlarida qaysi hududlar peshqadam?
🤩 Milliy statistika qoʻmitasi maʼlumotlariga koʻra Oʻzbekistonda 2025-yilning yanvar-avgust oylarida jami 188,5 trln soʻmlik qurilish ishlari bajarilib, 2024-yilning mos davriga nisbatan 11,5 % ga oshgan.
🇺🇿 Ushbu koʻrsatkichning hududlar kesimidagi dinamikasi quyidagicha:
— Toshkent shahri — 56,2 trln soʻm;
— Toshkent viloyati — 21,4 trln soʻm;
— Buxoro viloyati — 12 trln soʻm;
— Samarqand viloyati — 11,5 trln soʻm;
— Fargʻona viloyati — 11,5 trln soʻm;
— Qashqadaryo viloyati — 10,7 trln soʻm;
— Surxondaryo viloyati — 9,5 trln soʻm;
— Namangan viloyati — 8,8 trln soʻm;
— Andijon viloyati — 8,6 trln soʻm;
— Navoiy viloyati — 7,9 trln soʻm;
— Xorazm viloyati — 7,8 trln soʻm;
— Qoraqalpogʻiston Resp. — 6,4 trln soʻm;
— Jizzax viloyati — 5,1 trln soʻm;
— Sirdaryo viloyati — 3,6 trln soʻm.
Rasmiy sahifalarimizga a'zo bo'ling👇
|
🌍Web|
📸Instagram|
💬Facebook|😎Telegram|
📹Youtube|
❗️Bu yil ideal bo'ldi: biz ishladik, siz qo'llab - quvvatladingiz, juda ko'payishdik.
#Statistika
Hammasi uchun rahmat! 2026-yilni ham kamida shunday o'tkazishimizga Alloh madodkor bo'lsin!
⚡Ana endi ishga yana-da kuchliroq yondashamiz!
Faoliyatimiz sizga oz bo‘lsa-da manfaatli bo‘lganidan mamnunmiz!
Kanalimiz:
https://t.me/Onatili_Izamov
❗️Bu yil ideal bo'ldi: biz ishladik, siz qo'llab - quvvatladingiz, juda ko'payishdik.
#Statistika
Hammasi uchun rahmat! 2026-yilni ham kamida shunday o'tkazishimizga Alloh madodkor bo'lsin!
⚡Ana endi ishga yana-da kuchliroq yondashamiz!
Kanalimiz:
https://t.me/Onatili_Izamov