From ahospers at gmail.com Sun Jan 20 15:13:10 2008 From: ahospers at gmail.com (ahospers at gmail.com) Date: Sun, 20 Jan 2008 15:13:10 +0100 Subject: [Groningen] Vraagje over Perl... Message-ID: <5fe132720801200613j517993cfo796a0be2983636e2@mail.gmail.com> Hoi, Ik vroeg me af of je onderstaande ook in Perl kon doen..Dit voorbeeld van internet werkt gewoon: perl -i -ple 'print q{#!/usr/bin/perl} if $. == 1; close ARGV if eof' *.dat maar onderstaande doet niets. Perl_dat]$ perl -i -ple ' my $currentNaam; while (my $line = MYFILE) { if ($line =~ /agentName=(.*)/) { $currentNaam = $1; } else { print $currentNaam + ", " + $line + "\n"; } } ' MYFILE De inhoud van MYFILE _+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+ *** User *** Wed Nov 28 18:00:11 MET 2007 NaamVrijwillger=Jan *** User *** Wed Nov 28 18:00:11 MET 2007 NaamVrijwillger=Piet *** User *** Wed Nov 28 18:00:11 MET 2007 NaamVrijwillger=Jaap bla bla bla bla bla bla blibli bli lbi bli blo blo bolo bla bla bla bla bla bla bla bla bla bla bla bla blibli bli lbi bli blo blo bolo bla bla bla bla bla bla blibli bli lbi bli blo blo bolo *** User *** Wed Nov 28 18:00:11 MET 2007 NaamVrijwillger=Frank *** User *** Wed Nov 28 18:00:11 MET 2007 NaamVrijwillger=Jan bla bla bla bla bla bla blibli bli lbi bli blo blo bolo bla bla bla bla bla bla bla bla bla bla bla bla blibli bli lbi bli blo blo bolo bla bla bla bla bla bla blibli bli lbi b _+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+ moet worden dit worden: MYFILE.NEW _+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+ Sat Nov 03 18:00:27 MET 2007,Jaap, bla bla bla bla bla bla Sat Nov 03 18:00:27 MET 2007,Jaap, blibli bli lbi bli Sat Nov 03 18:00:27 MET 2007,Jaap, blo blo bolo Sat Nov 03 18:00:27 MET 2007,Jaap, bla bla bla bla bla bla Sat Nov 03 18:00:27 MET 2007,Jaap, bla bla bla bla bla bla Sat Nov 03 18:00:27 MET 2007,Jaap, blibli bli lbi bli Sat Nov 03 18:00:27 MET 2007,Jaap, blo blo bolo Sat Nov 03 18:00:27 MET 2007,Jan, bla bla bla bla bla bla Sat Nov 03 18:00:27 MET 2007,Jan, blibli bli lbi bl Sat Nov 03 18:00:27 MET 2007,Jan, blo blo bol Sat Nov 03 18:00:27 MET 2007,Jan, bla bla bla bla bla bla Sat Nov 03 18:00:27 MET 2007,Jan, bla bla bla bla bla bla -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.losc.nl/pipermail/groningen/attachments/20080120/a828188f/attachment.html From jvromans at squirrel.nl Sun Jan 20 23:37:30 2008 From: jvromans at squirrel.nl (Johan Vromans) Date: 20 Jan 2008 23:37:30 +0100 Subject: [Groningen] Re: Vraagje over Perl... In-Reply-To: <5fe132720801200613j517993cfo796a0be2983636e2@mail.gmail.com> References: <5fe132720801200613j517993cfo796a0be2983636e2@mail.gmail.com> Message-ID: "ahospers at gmail.com" writes: > maar onderstaande doet niets. Dat komt omdat je absoluut geen idee hebt wat je doet. Probeer de code eens in een gewoon perl bestandje, zeg poging.pl op te slaan: #!/usr/bin/perl use strict; use warnings; # De huidige vrijwilliger. my $currentNaam; # Lees regels. while ( my $line = <> ) { # Test op vrijwilligersnaam. if ( $line =~ /NaamVrijwillger=(.*)/ ) { # Sla op. $currentNaam = $1; } else { # Druk af, met naam ervoor. print $currentNaam + ", " + $line; } } en dan uitvoeren met perl poging.pl MYFILE Ik ben ervan uitgegaan dat je de namen van de vrijwilligers eruit wil halen. Let op dat dit in MYFILE verkeerd is gespeld. Succes, Johan