From domm at cpan.org Mon Dec 1 02:31:49 2008 From: domm at cpan.org (Thomas Klausner) Date: Mon, 1 Dec 2008 11:31:49 +0100 Subject: [Vienna-pm] HackMeet heute! Message-ID: <20081201103149.GD31920@dedomm.validad.net> Hi! Kleiner Reminder: Heute ist das erste HackMeet: http://socialtext.useperl.at/vienna-pm/index.cgi?hackmeet_am_1_12_2008 Ort: VeriSign (U3 Ottakring, Hasnerstr. 123, 5. Stock) Mehr infos siehe wiki-link.. -- #!/usr/bin/perl http://domm.plix.at for(ref bless{},just'another'perl'hacker){s-:+-$"-g&&print$_.$/} From michael.kroell at uibk.ac.at Mon Dec 1 02:35:49 2008 From: michael.kroell at uibk.ac.at (=?ISO-8859-1?Q?Michael_Kr=F6ll?=) Date: Mon, 01 Dec 2008 11:35:49 +0100 Subject: [Vienna-pm] HackMeet heute! In-Reply-To: <20081201103149.GD31920@dedomm.validad.net> References: <20081201103149.GD31920@dedomm.validad.net> Message-ID: <4933BE05.3080103@uibk.ac.at> Thomas Klausner wrote: > Kleiner Reminder: Heute ist das erste HackMeet: > http://socialtext.useperl.at/vienna-pm/index.cgi?hackmeet_am_1_12_2008 > > Ort: > VeriSign (U3 Ottakring, Hasnerstr. 123, 5. Stock) Um 18:00 ist unser Empfang wahrscheinlich nicht mehr besetzt - im Fall bitte via +43 664 808 41 743 melden. lg, michael -- 063A F25E B064 A98F A479 1690 78CD D023 5E2A 6688 http://zis.uibk.ac.at/.m/uibk.ac.at_pgp_pubkey.asc From domm at cpan.org Fri Dec 5 06:17:48 2008 From: domm at cpan.org (Thomas Klausner) Date: Fri, 5 Dec 2008 15:17:48 +0100 Subject: [Vienna-pm] Fwd: 2009 QA Hackathon - The Dates Message-ID: <20081205141748.GA31380@dedomm.validad.net> ----- Forwarded message from Barbie ----- From: Barbie Subject: [pm_groups] 2009 QA Hackathon - The Dates Date: Fri, 5 Dec 2008 08:36:30 +0000 To: pm_groups at pm.org Following the initial announcement at YAPC::Europe [1], Birmingham Perl Mongers [2] are pleased to announce that the 2009 QA Hackathon will be held over 3 days: *** Saturday March 28th to Monday March 30th 2009 *** Our wiki - http://qa-hackathon.org - is now live, so please feel free to sign-up and add details about yourself if you want to be involved, suggest projects or people for the event. We are hoping to attract about 15-20 people with plans to hack on various QA/testing projects, so if you think you can contribute something, or would like to nominate someone, please feel free to update the Attendees [4] page with contact details, etc. Also if you think a particular project should be covered, please add a page for it and tell us about it. We are also looking for sponsors [5] for the event, and although we have already contacted a few, we are eager to have more in the event we are able to provide funding for more attendees, particularly from overseas. If you have a contact for us, please send an email to organisers at qa-hackathon.org with details. We are delighted to have $foo Magazin [6] sponsor us, as well Birmingham Perl Mongers [2], who are underwriting the complete event. Negotiations for venue and accommodation are ongoing, so we'll make those known once they are finalised. We would like to have everyone together, so if you're planning to bring your partner/family with you, please add a note to your entry in the Attendees [4] page, so we can make sure we allocate rooms for everyone. Expect more news regarding the venue and accommodation in the new year. [1] http://www.yapceurope2008.org [2] http://birmingham.pm.org/ [3] http://qa-hackathon.org [4] http://qa-hackathon.org/wiki/Attendees [5] http://qa-hackathon.org/wiki/Sponsors [6] http://www.perl-magazin.de/ Thanks, The Organisers. -- 2009 QA Hackathon - http://qa-hackathon.org -- Request pm.org Technical Support via support at pm.org pm_groups mailing list pm_groups at pm.org http://mail.pm.org/mailman/listinfo/pm_groups ----- End forwarded message ----- -- #!/usr/bin/perl http://domm.plix.at for(ref bless{},just'another'perl'hacker){s-:+-$"-g&&print$_.$/} From fabio.valeri at bluewin.ch Fri Dec 5 12:29:32 2008 From: fabio.valeri at bluewin.ch (Fabio Valeri) Date: Fri, 05 Dec 2008 21:29:32 +0100 Subject: [Vienna-pm] Zeilenumbruch ersetzen Message-ID: <49398F2C.7040503@bluewin.ch> Hallo, Ich bin mir nicht sicher, ob ich hier mit meinem Problem richtig bin. Falls nicht, w?re ich froh um ein Tip f?r eine entsprechende Perl-Mailing-Gruppe. Ich benutze Perl gelegentlich und bin nun auf folgendes Problem gestossen.. technische Umgebung: XP, ActivePerl 5.10.0.1004, OpenOffice 2.4.1 Ich exportiere Daten aus einem OpenOffice Spreadsheet (.ods) als csv-Datei und erhalte folgendes: ******************************* A;B;C;D dom1;extra1(.)z0001;sdf1 dom2;extra2(.)z0002;sdf2 dom3;extra3(.)z0002;sdf3 ******************************** Hier ist anzumerken, dass (.) f?r ein Zeilenumbruch steht. D.h., das in den Zellen des Spreadsheet in der Kolonne C Zeilenumbr?che vorhanden sind. Semikoklon ist der Delimiter. In Notepad wird der Zeilenumbruch als kleines Vierreck dargestellt ohne Zeilenumbruch. In Emacs findet der Zeilenumbruch statt und am Ende einer Zeile steht ^M. Wenn ich das csv-File mit Emacs im Hexadezimal-Modus anschaue, erhalten ich an der Stelle (.) Oa. Ich m?chte nun diese csv-Datei einlesen und die Zeilenumbr?che Oa ersetzen mit xxx. Dazu habe ich folgendes geschrieben: ******************************** while () { $row0 = $_; $row0 =~ s/\x0a/xxx/g; # Konvertierung von Zeilenumbruch nach xxx print OUTPUT1 $row0,\n; print OUTPUT1 "","\n"; } ******************************** Als OUTPUT erhalten ich (erste Zeile beabsichtigt nicht eingelesen): ******************************** dom1;extra1xxxSCALAR(0x239cd4) z0001;sdf1xxxSCALAR(0x1829984) dom2;extra2xxxSCALAR(0x1829994) z0002;sdf2xxxSCALAR(0x1829984) dom3;extra3xxxSCALAR(0x1829994) z0002;sdf3SCALAR(0x1829994) ******************************** Es ist also folgendes passiert: 1. Oa wurde nach xxx umgewandelt 2. Es wurde etwas hinzugef?gt, z.B. SCALAR(0x239cd4) 3. es findet ein Zeilenumbruch statt Mein Wunsch w?re gewesen: ************************************ dom1;extra1xxxz0001;sdf1 dom2;extra2xxxz0002;sdf2 dom3;extra3xxxz0002;sdf3 ************************************ Die Idee dahinter ist, dass ich die Zeilenumbr?che in Spreadsheet-Zellen nach xxx konvertieren m?chte, um Probleme zu vermeiden. Ich bin f?r jede Hilfe dankbar. Gruss Fabio From kh at dartbase.com Fri Dec 5 12:50:11 2008 From: kh at dartbase.com (Karlheinz Zoechling) Date: Fri, 05 Dec 2008 21:50:11 +0100 Subject: [Vienna-pm] Zeilenumbruch ersetzen In-Reply-To: <49398F2C.7040503@bluewin.ch> References: <49398F2C.7040503@bluewin.ch> Message-ID: <49399403.9070900@dartbase.com> Fabio Valeri schrieb: > Hallo, guten abend, > Ich bin mir nicht sicher, ob ich hier mit meinem Problem richtig bin. jedenfalls richtig! :) > [..] und bin nun auf > folgendes Problem gestossen.. [..] > print OUTPUT1 $row0,\n; das hier sollte machen was du willst: print OUTPUT1 $row0,"\n"; > Ich bin f?r jede Hilfe dankbar. ich hoffe es hilft. lg karlheinz From spaceman at foo.at Fri Dec 5 13:11:09 2008 From: spaceman at foo.at (Stefan Weiss) Date: Fri, 05 Dec 2008 22:11:09 +0100 Subject: [Vienna-pm] Zeilenumbruch ersetzen In-Reply-To: <49398F2C.7040503@bluewin.ch> References: <49398F2C.7040503@bluewin.ch> Message-ID: <493998ED.30009@foo.at> On 2008-12-05 21:29, Fabio Valeri wrote: > Hier ist anzumerken, dass (.) f?r ein Zeilenumbruch steht. D.h., das in > den Zellen des Spreadsheet in der Kolonne C Zeilenumbr?che vorhanden > sind. Semikoklon ist der Delimiter. In Notepad wird der Zeilenumbruch > als kleines Vierreck dargestellt ohne Zeilenumbruch. In Emacs findet > der Zeilenumbruch statt und am Ende einer Zeile steht ^M. Wenn ich das > csv-File mit Emacs im Hexadezimal-Modus anschaue, erhalten ich an der > Stelle (.) Oa. Das legt nahe, dass ein Zeilenumbruch innerhalb einer Zelle als \n (line feed) vorliegt, und das Zeilenende \r\n (carriage return + line feed) ist. > ******************************** > while () { > > $row0 = $_; > $row0 =~ s/\x0a/xxx/g; # Konvertierung von Zeilenumbruch nach xxx > print OUTPUT1 $row0,\n; ^^ Das ist das Problem. \n muss gequoted werden, sonst interpretiert Perl es als Referenz auf ein Symbol namens n. Das erzeugt dann die "SCALAR..." Ausgabe. Um solche Fehler gleich zu finden, sollte man immer -w bzw "use warnings" verwenden. Am besten auch gleich "use strict". > print OUTPUT1 "","\n"; > } > ******************************** Probier's mal so: $/ = "\r\n"; while () { chomp(my $row = $_); $row =~ s/\n/xxx/g; print "$row\n"; } oder ohne Hilfsvariable: $/ = "\r\n"; while () { chomp; s/\n/xxx/g; print "$_\n"; } Die spezielle Variable $/ legt fest, welche Zeichen(folge) Perl als Zeilenende ansieht. --> perldoc perlvar HTH, Stefan -- LOAD"Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn!",8,1 RUN! From e9427749 at stud4.tuwien.ac.at Fri Dec 5 14:05:56 2008 From: e9427749 at stud4.tuwien.ac.at (josef schmid) Date: Fri, 05 Dec 2008 23:05:56 +0100 Subject: [Vienna-pm] Zeilenumbruch ersetzen In-Reply-To: <493998ED.30009@foo.at> References: <49398F2C.7040503@bluewin.ch> <493998ED.30009@foo.at> Message-ID: <4939A5C4.9010600@stud4.tuwien.ac.at> Stefan Weiss schrieb: > On 2008-12-05 21:29, Fabio Valeri wrote: [...] > Das legt nahe, dass ein Zeilenumbruch innerhalb einer Zelle als \n (line > feed) vorliegt, und das Zeilenende \r\n (carriage return + line feed) ist. > [...] > > Probier's mal so: > > $/ = "\r\n"; > while () { > chomp(my $row = $_); > $row =~ s/\n/xxx/g; > print "$row\n"; > } > [...] > Die spezielle Variable $/ legt fest, welche Zeichen(folge) Perl als > Zeilenende ansieht. --> perldoc perlvar F?r die Eingabe: Wenn man "use English '-no_match_vars';" verwendet, auch $INPUT_RECORD_SEPERATOR. Aber was ich eigentlich anmerken wollte: Er braucht wahrscheinlich auch noch "binmode *INPUT;" da unter Wind*** ist. BTW. Es gibt sehr sehr viele CPAN-Module f?r CSV parsen. Z.B. my $p= Text::CSV_XS->new({ eol=>"\r\n",sep_char=>';', binary=>1,verbatim=>1 }); my @result=$p->getline(\*INPUT); Alle Behauptungen ungetestet! pfiateng, Jos "open my $input, '<',$filename or die" ef From fabio.valeri at bluewin.ch Fri Dec 5 14:31:48 2008 From: fabio.valeri at bluewin.ch (Fabio Valeri) Date: Fri, 05 Dec 2008 23:31:48 +0100 Subject: [Vienna-pm] Zeilenumbruch ersetzen In-Reply-To: <4939A5C4.9010600@stud4.tuwien.ac.at> References: <49398F2C.7040503@bluewin.ch> <493998ED.30009@foo.at> <4939A5C4.9010600@stud4.tuwien.ac.at> Message-ID: <4939ABD4.7080705@bluewin.ch> Hallo Karl-Heinz, Stefan, Josef, Besten Dank an Euch alle f?r die prompte Antwort. Das (\n statt "\n") war ein grober Fehler von mir, ich hatte es einfach ?bersehen. Nun habe ich die folgende Version versucht $/ = "\r\n"; while () { chomp(my $row = $_); $row =~ s/\n/xxx/g; print OUTPUT "$row\n"; } Als Output erhalte ich nun: ********************************** dom1;extra1xxxz0001;sdf1xxxdom2;extra2xxxz0002;sdf2xxxdom3;extra3xxxz0002;sdf3 ********************************** D.h., es wird alles aneinandergereiht, obwohl Zeilenumbruch (\n) vorhanden ist. Das ist doch seltsam. Mein Ziel ist ********************* dom1;extra1xxxz0001;sdf1 dom2;extra2xxxz0002;sdf2 dom3;extra3xxxz0002;sdf3 ********************** zu erhalten. @Josef: Ich w?rde gerne Module verwenden, aber mir scheint das nicht so trivial zu sein. Sobald ich mehr Zeit habe, werde ich mal diese Alternvative versuchen. Besten Dank und Gruss Fabio From wolfgang.laun at gmail.com Sat Dec 6 02:24:21 2008 From: wolfgang.laun at gmail.com (Wolfgang Laun) Date: Sat, 6 Dec 2008 11:24:21 +0100 Subject: [Vienna-pm] Zeilenumbruch ersetzen In-Reply-To: <4939ABD4.7080705@bluewin.ch> References: <49398F2C.7040503@bluewin.ch> <493998ED.30009@foo.at> <4939A5C4.9010600@stud4.tuwien.ac.at> <4939ABD4.7080705@bluewin.ch> Message-ID: <17de7ee80812060224ofc3d4bcp7f3fb62f92e3cbfe@mail.gmail.com> Josef Schmid hat recht, binmode ist auch noch notwendig. open( INPUT, "some.csv" ); binmode( INPUT ); $/ = "\r\n"; while( my $row = ){ chomp($row); $row =~ s/\n/xxx/g; print "$row\n"; } 2008/12/5 Fabio Valeri > Hallo Karl-Heinz, Stefan, Josef, > > Besten Dank an Euch alle f?r die prompte Antwort. Das (\n statt "\n") war > ein grober Fehler von mir, ich hatte es einfach ?bersehen. Nun habe ich die > folgende Version versucht > > $/ = "\r\n"; > while () { > chomp(my $row = $_); > $row =~ s/\n/xxx/g; > print OUTPUT "$row\n"; > } > > Als Output erhalte ich nun: > > ********************************** > > dom1;extra1xxxz0001;sdf1xxxdom2;extra2xxxz0002;sdf2xxxdom3;extra3xxxz0002;sdf3 > ********************************** > > D.h., es wird alles aneinandergereiht, obwohl Zeilenumbruch (\n) vorhanden > ist. Das ist doch seltsam. > Mein Ziel ist > ********************* > dom1;extra1xxxz0001;sdf1 > dom2;extra2xxxz0002;sdf2 > dom3;extra3xxxz0002;sdf3 > ********************** > zu erhalten. > > @Josef: Ich w?rde gerne Module verwenden, aber mir scheint das nicht so > trivial zu sein. Sobald ich mehr Zeit habe, werde ich mal diese Alternvative > versuchen. > > Besten Dank und Gruss > > Fabio > > _______________________________________________ > Vienna-pm mailing list > Vienna-pm at pm.org > http://mail.pm.org/mailman/listinfo/vienna-pm > -------------- next part -------------- An HTML attachment was scrubbed... URL: From fabio.valeri at bluewin.ch Sat Dec 6 03:55:08 2008 From: fabio.valeri at bluewin.ch (Fabio Valeri) Date: Sat, 06 Dec 2008 12:55:08 +0100 Subject: [Vienna-pm] Zeilenumbruch ersetzen In-Reply-To: <17de7ee80812060224ofc3d4bcp7f3fb62f92e3cbfe@mail.gmail.com> References: <49398F2C.7040503@bluewin.ch> <493998ED.30009@foo.at> <4939A5C4.9010600@stud4.tuwien.ac.at> <4939ABD4.7080705@bluewin.ch> <17de7ee80812060224ofc3d4bcp7f3fb62f92e3cbfe@mail.gmail.com> Message-ID: <493A681C.8000504@bluewin.ch> Ich habe die kleine ?nderung (binmode()) durchgef?hrt und nun klappt es. Verstanden habe ich es zwar nicht, aber nun kann ich weiterarbeiten. Besten Dank f?r Eure Hilfe. Gruss Fabio Wolfgang Laun schrieb: > Josef Schmid hat recht, binmode ist auch noch notwendig. > > open( INPUT, "some.csv" ); > binmode( INPUT ); > $/ = "\r\n"; > while( my $row = ){ > chomp($row); > $row =~ s/\n/xxx/g; > print "$row\n"; > } > > > > 2008/12/5 Fabio Valeri > > Hallo Karl-Heinz, Stefan, Josef, > > Besten Dank an Euch alle f?r die prompte Antwort. Das (\n statt > "\n") war ein grober Fehler von mir, ich hatte es einfach > ?bersehen. Nun habe ich die folgende Version versucht > > > $/ = "\r\n"; > while () { > chomp(my $row = $_); > $row =~ s/\n/xxx/g; > print OUTPUT "$row\n"; > } > > Als Output erhalte ich nun: > > ********************************** > dom1;extra1xxxz0001;sdf1xxxdom2;extra2xxxz0002;sdf2xxxdom3;extra3xxxz0002;sdf3 > ********************************** > > D.h., es wird alles aneinandergereiht, obwohl Zeilenumbruch (\n) > vorhanden ist. Das ist doch seltsam. > Mein Ziel ist > > ********************* > dom1;extra1xxxz0001;sdf1 > dom2;extra2xxxz0002;sdf2 > dom3;extra3xxxz0002;sdf3 > ********************** > zu erhalten. > > @Josef: Ich w?rde gerne Module verwenden, aber mir scheint das > nicht so trivial zu sein. Sobald ich mehr Zeit habe, werde ich mal > diese Alternvative versuchen. > > Besten Dank und Gruss > > Fabio > > _______________________________________________ > Vienna-pm mailing list > Vienna-pm at pm.org > http://mail.pm.org/mailman/listinfo/vienna-pm > > From wolfgang.laun at gmail.com Sat Dec 6 12:52:22 2008 From: wolfgang.laun at gmail.com (Wolfgang Laun) Date: Sat, 6 Dec 2008 21:52:22 +0100 Subject: [Vienna-pm] Zeilenumbruch ersetzen In-Reply-To: <493A681C.8000504@bluewin.ch> References: <49398F2C.7040503@bluewin.ch> <493998ED.30009@foo.at> <4939A5C4.9010600@stud4.tuwien.ac.at> <4939ABD4.7080705@bluewin.ch> <17de7ee80812060224ofc3d4bcp7f3fb62f92e3cbfe@mail.gmail.com> <493A681C.8000504@bluewin.ch> Message-ID: <17de7ee80812061252m7dde0a15y91433a5c96a94dc6@mail.gmail.com> On Sat, Dec 6, 2008 at 12:55 PM, Fabio Valeri wrote: > Ich habe die kleine ?nderung (binmode()) durchgef?hrt und nun klappt es. > Verstanden habe ich es zwar nicht, In perlfunc wird zu binmode() erkl?rt, dass DOS&Co \r\n als Zeilenbegrenzung im File stehen haben, was aber von der I/O-Library zur Herstellung der Portabilit?t f?r Perl-Programme (wie auch in C und sonstwo) in \n umgewandelt wird. Ergo ist ein sonstiges \n aus dem File dann programmintern nicht mehr von einem solchen Umwandlungsergebnis zu unterscheiden. Durch binmode() wird die o.a. Umwandlung unterdr?ckt, wonach aber die explizite Angabe von \r\n im Verbund mit dem Operator <> trotzdem eine Verarbeitung a la Text-File erm?glicht. > > Besten Dank f?r Eure Hilfe. > > Gruss > > Fabio > > Wolfgang Laun schrieb: > >> Josef Schmid hat recht, binmode ist auch noch notwendig. >> >> open( INPUT, "some.csv" ); >> binmode( INPUT ); >> $/ = "\r\n"; >> while( my $row = ){ >> chomp($row); >> $row =~ s/\n/xxx/g; >> print "$row\n"; >> } >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From szabgab at gmail.com Mon Dec 8 14:05:57 2008 From: szabgab at gmail.com (Gabor Szabo) Date: Tue, 9 Dec 2008 00:05:57 +0200 Subject: [Vienna-pm] Danke Sehr! Message-ID: http://news.perlfoundation.org/2008/12/2008q4_grants_results.html -- Gabor Szabo http://szabgab.com/blog.html Test Automation Tips http://szabgab.com/test_automation_tips.html