Небольшой трик с регулярными выражениями который редко вижу в чужом коде.
Допустим, вам нужно распарсить простой текст и вытащить оттуда пары имя+телефон. Вернуть всё это надо в виде списка словарей. Возьмем очень простой пример текста.
>>> 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
#Italia🇮🇹
#Comunali
#Rende
A Rende, in provincia di Cosenza, i candidati sono 5.
Il centrodestra corre con Marco Saverio #Ghionna, sostenuto da Fratelli d'Italia (#FdI|ECR), Forza Italia (#FI|PPE; senza simbolo), Lega (#LSP|PfE; senza simbolo), Noi Moderati (#NM|PPE|PPCE) e da liste civiche.
In ordine sparso, invece, il centrosinistra:
- Giovanni #Bilotti è sostenuto dal Partito Democratico (#PD|S&D; senza simbolo) e da 2 liste civiche;
- Rossella #Gallo è la candidata del Movimento 5 Stelle (#M5S|LEFT) e di Rifondazione Comunista (#PRC|LEFT);
- Sandro #Principe è sostenuto da Partito Socialista Italiano (#PSI|S&D), L'Italia del Meridione e da 4 liste civiche.
È candidato anche Luciano #Bonanno, con una lista civica.
@TuttoElezioni
La battaglia dell' informazione è cruciale
Fino a che il dissenso contro le guerre in Ucraina e in Medio Oriente, contro la politica neoconservatrice statunitense che è divenuta politica della burocrazia eruropea e dei Governi vassalli asserviti alla finanza,
Non riuscirà a raggiungere audience di milioni di spettatori
E lascerà la società civile in balia della propaganda e della sottocultura dei media mainstream
Poco ci sarà da sperare.
Ci sono le tv alternative, youtuber, giornalisti competenti, che dovrebbero federarsi, fare economie di scala
Persone come #Santoro che hanno esperienza di decenni nell' informazione potrebbero essere di grande aiuto
Bisogna trovare i finanziamenti e le competenze. Unirsi.
È triste vedere come anche quelle 3/4 voci ammesse in tv si lascino plagiare.
Addirittura si accontentino delle briciole e citino i guru della tv quando danno loro ragione.
La propaganda è ovunque in Europa. Peculiare dell' Italia è che i giornalisti come nei 4 cantoni si autoinvitano spostandosi da un talk show all' altro.
La direttrice del salone di Roma destinato alle piccole case editrici #chiaravalerio dedica il salone alla Cecchettin
Ma cosa c' entra la letteratura con l' atroce femminicidio ?
Libercoli illegibili trionfano basta fare soap opere su una ragazza violentata o ammazzata, su un gay che finalmente ritrova la sua sessualità e fa orge a Berlino!
La #sottocultura imperante alimenta la propaganda e cancella la #politica
I femminicidi si combattono con cultura e apertura mentale non con le soap
Si combattono con istruzione e contrasto al degrado, l integrazione e l inclusione dei ragazzi poveri migranti e non
La femminista #chiaravalerio che ha ecluso i libri di tanti validi scrittori non conformi alla propaganda del centro-sinistra ( incluso Frammenti di Bruxelles) aiuta quel sostrato incolto che alleva piccoli teppisti
Chiudiamo la Tv
e leggiamo
Oppure guardiamo ricercatori come #Gabellini
E tanti altri, #Ottolinatv che non è un covo di rossobruni ma è fatta con pochi mezzi da ragazzi onesti e preparati.
Ascoltiamo #canfora#Mini#cardini#Moniovadia#Odifreddi#arlacchi#bradanini#gallo#lavalle e tanti altri e se conosciamo l'inglese o il francese in rete troviamo l ' intellighentia statunitense latinoamericana francese europea.
Guardate la vetrina di una libreria che ha rifiutato la presentazione del mio libro pure esposto solo soletto piccolo e meschino tra i tanti cazzulli del mainstream . Divertente e incisiva immagine della disparità di mezzi.
Parlo di me ma nelle mie condizioni, autori validi e ignorati, ce ne sono migliaia
Ritornare alla ragione alla mediazione alla cooperazione al diritto internazionale alla persona umana, contrastare le belve che oggi massacrano gli innocenti è possibile
Stampa e istituzioni in Occidente fanno da eco ai giochi di potere decisi a tavolino dalle oligarchie della finanza , delle armi, dell' energia.
#russia
#Lebanon2024
#GazaGenocide
#MainstreamMedia