[Tech] Dritta richiesta

Franco Bagnoli bagnoli@dma.unifi.it
Ven 19 Gen 2001 22:11:07 CET


On Fri, 19 Jan 2001, Leonardo Boselli wrote:

> Richiedo dritta: 
> dato un file (il corpo di una e-mail) contenente testo, trovare e 
> stampate in uscita tutto gio`che sta tra la string A e la stringa B .
> Il testo puo`essere suddiviso su pił righe ma sicuramente le 
> stringhe A e B non sono mai spezzate.
> Se la stringa A appare pił volte nel testo allora lo script deve fare 
> uscire il testo compreso tutte le volte (mi spiego con il caso:)
> INPUT:
> Elenco Partecipanti distinti per Cittą:
> Nome Pinco Palla Cittą Napoli
> Nome Caio Sempronio
> Mazzuchetti Cittą Cittą 
> Ducale Nome John Smith 
> *******
> Stringa A=Nome Stringa B=Cittą
> output richiesto:
> Pinco Palla, Caio Sempronio Mazzuchetti, John Smith
> 
> Richiesta aggiuntiva: deve essere in PERL o al limite usare solo 
> utility standard GNU sotto forma di script (in C lo sapevo fare 
> anch'io)
> Qualche idea ?

($a,$b)=qw/Nome Cittą/;($_=join('', <>))=~s/\n/ /g;
s/$a(.*?)\s*($b|$a|$)/print($2?"$1, ":"$1\n"),$a/ges;

Franco Bagnoli
Dipartimento di Matematica Applicata "G. Sansone"
Universita' di Firenze, Via S. Marta, 3 I-50139 Firenze, Italy
tel. +39 0554796422, fax: +39 055471787
e-mail: bagnoli@dma.unifi.it





Maggiori informazioni sulla lista flug-tech