Zase ten perl ...
    Honza Pazdziora 
    adelton na informatics.muni.cz
       
    Úterý Duben  1 13:51:28 CEST 1997
    
    
  
> >
> >  open(MAIN,"$file") || die $!;
> >  @main = <MAIN>;
> >  close(MAIN);
> >
> >  open(MAIN,">$file") || die $!;
> >  foreach $main_line (@main)     {
> >      if ($main_line =~ /$pozn/) 
> >         {
> >           print MAIN "$main_line";
> >           print MAIN "	$num	\n";
> >         }
> >      else 
> >         { print MAIN "$main_line"; }
> >    }
> >  close(MAIN);
> >
> >Chtel bych, aby tento kod :
> >1) vyhledal v souboru $file radek s obsahem $pozn (coz ucini)
> >2) az ho najde, aby ho prepsal jim samym (coz ucini)
> >3) prepsal nasledujici radek velicinou <tab>$num<tab> (coz NEucini) - ucini
> >to, za zapise <tab>$num<tab> PRED nasledujici radek (=vlozi radek s
> >hodnotou <tab>$num<tab> za radek s @pozn :-((((
Resp. za radek s $pozn :-(
> 1) ten program dela presne to co ma (zkuste se vzdycky nejdriv  zamyslet,
>  nez to nekam poslete)
Spravne, program vzdycky dela presne to, co rika jeho zdrojak, ze ma
delat.
> 2) pokud nechcete aby tam byl ten radek nasledujici za "$pozn", je treba ho
>  nejspis odstranit aby se netisknul; treba:
> 
> ..
>          {
>          print MAIN "$main_line";
> 			shift @main;
>          print MAIN "   $num  \n";
>          }
> ..
No nevim, to zadani neni moc presne. Me napoprve napadl tento one-liner
perl -i -ne 'print ($dont ? "krtek\n" : $_ ); $dont = 0; $dont = 1 if /jezek/;'
ktery ale da ponekud jiny vysledek, nez ta tvoje uprava. Protoze co
kdyz se jezek vyskytuje ve dvou radcich po sobe? Ja nahradim i ten
radek za druhym vyskytem, protoze ho testuju, zatimco tim shiftem uz
se na neho nedostanes. Coz muze byt vyhoda i nevyhoda, kdo vi.
------------------------------------------------------------------------
 Honza Pazdziora | adelton na fi.muni.cz | http://www.fi.muni.cz/~adelton/
                   I can take or leave it if I please
------------------------------------------------------------------------
    
    
Další informace o konferenci Linux