[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Filtrar comodins/regex de les línies



El 17/1/24 a les 21:39, Ernest Adrogué ha escrit:
2024-01-17, 08:39 (+0100); Narcis Garcia escriu:
Bones,

Tinc un fitxer de text, com podria ser per exemple una llista de números de
telèfon (coneguts.txt):
972123456
972111133
972111134
972111135
972111136
972789012
però m'agradaria representar-hi rangs compatibles (expressions regulars) per
abreviar:
972123456
9721111..
972789012

Hi ha una cosa que no entenc.  El patró "9721111.." representa els
números 972111100, 972111101, 972111102, ..., 972111198, 972111199.
Mentre que a la teva llista només hi tens el 972111133, 972111134,
972111135, i el 972111136.  Si substitueixes aquests números pel patró
"9721111.." el resultat és un conjunt de números que és DIFERENT de
l'original.


No era més que un exemple; la primera llista com si fos la típica (per a filtrar de forma senzilla amb grep), i la segona com voldria poder-la fer. És a dir, en comptes de fer una llista amb 100 línies «9721111xx» (del 00 al 99) poder-hi posar un patró en una sola línia.

PERÒ igualment el tema dels números de telèfon és només un exemple senzill; no es tracta dels números sinó de buscar patrons amb una cadena fixa en comptes de buscar cadenes amb un patró.

Exemple amb números de DNI; la llista seria:
ES......... Spain
FR......... France
.........DE Germany
IT......... Italy

I donat un DNI «55667788DE» poder trobar la línia del patró corresponent:
.........DE Germany
I així extraure el nom de l'estat després de l'espai: Germany.

Cas més sofisticat; Rangs d'adreces IPv4 en un fitxer «spammers.txt»:
55\.66\.77\.88
66\.77\.88\..*
99\.11\.22\.33

i amb això trobar que si la IP de l'interlocutor té coincidència a la llista, aleshores no acceptar-lo. I així poder incloure rangs també.

--

Narcis Garcia

__________
I'm using this dedicated address because personal addresses aren't masked enough at this mail public archive. Public archive administrator should remove and omit any @, dot and mailto combinations against automated addresses collectors.


Reply to: