Небольшой трик с регулярными выражениями который редко вижу в чужом коде.
Допустим, вам нужно распарсить простой текст и вытащить оттуда пары имя+телефон. Вернуть всё это надо в виде списка словарей. Возьмем очень простой пример текста.
>>> 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
🔗 Tracking link nima o‘zi?
🌐 Internetda ba’zi linklar juda uzun va tushunarsiz bo‘ladi. Masalan: yandex.ru/an/count/abc123xyz...
Bu oddiy link emas: Tracking link — bu bosganimizni kuzatadigan maxsus link.
📊 U orqali: kim bosdi, qayerdan keldi (Telegram, Instagram va h.k.), qachon bosildi, nechta odam kirdi va hammasi hisoblab boriladi.
❓ Nega juda uzun bo‘ladi? Chunki ichida yashirin ma’lumotlar (ID, vaqt, manba) kodlangan bo‘ladi.
⚠️Eslatma: Tracking linklar zararli emas, lekin ular sizni kuzatadi (analitika uchun).
📱Bizning barcha loyihalar | #tracking
#haifa#tracking
Всем привет!
Каникулы подходят к концу и хочется завершить их в очень красивом месте в приятной компании 🌲🪵🪻🌵⛰️.
Приглашаем вас в мини-поход с нашим чудесным гидом Колей @Nicksanchuk (мы встречались не раз на фехтовальных прогулах) и Ирой @ira_shevchuk_bp.
Мы пройдём по живописным местам в национальном парке Хайфы. Маршрут будет проходить по руслу пересохшей реки и первая часть маршрута по тропам. Маршрут примерно 7 км, будут разные перепады высот (как вверх, так и вниз). Предположительно это займёт у нас около 4 часов, вместе с привалами.
Что с собой:
1. Вода 3 литра+
2. Головной убор
3. Перекус (примерно на два раза)
4. Солнцезащитный крем
5. Закрытая обувь
6. Штаны очень желательно (чтобы защитить ноги от колючих растений)
7. Удобный заплечный рюкзак
Когда: 29 апреля, понедельник ( автобусы ходят как в субботу).
Место сбора:
https://maps.app.goo.gl/aXp8dBcznMdCWKnPA
Время сбора 10:50 (автобус приходит в 10:40).
Поход состоится, если у нас будет не менее 5 участников:) Поэтому просим вас записаться в комментариях к этому анонсу.;)
¿Que puede hacer este bot?
@RobotRobot
Bot para rastrear paquetes. Muestra la ruta y el estado de cualquier envío por su código de seguimiento.
Idioma: ruso
(Visto en @botsgram_cu)
#tracking#paquetes
SharedTrace
#Python tool for getting additional info by shared link (usernames, avatars, IDs etc).
Support TikTok, Instagram, Discord, ChatGPT, Perplexity and other platforms.
https://github.com/hondling/sharetrace
@cybdetective
#socmint#tracking#trackers#stalking#surveillance#why
Revi Secures $500K Funding
Revi has successfully raised $500K in funding as of December 4, 2024. The platform offers precise and scalable workflows for identifying, researching, and tracking M&A targets.
#Funding#M&A #Startups#Investment#AI#Tech#Research#Workflows#Revi#Business#Innovation#Scalable#Tracking#Targets#Finance#Growth#Scale#Market#Analysis #2024
Modified perl script of @ robertoprubio to use the local file
perl disable-trackers-from-recovery.pl --exodus-trackers-pathname <pathname>
where <pathname> refers to pathname of the local exodus file that you've downloaded from https://etip.exodus-privacy.eu.org/trackers/export
#disablebadservices#disable#blocker#watt#mat#block#ifw#intents#services#ads#tracking