[Cologne-pm] PERL - schnelles suchen & ersetzen in 100MB Datei

cem.sakaryali at easi.de cem.sakaryali at easi.de
Thu Apr 29 11:28:02 CDT 2004


den Hash hatte ich erfunden, da ich auch nur den Code hatte (ohne hash). 
Es ist jetzt viel schneller geworden somit war eure Hilfe sehr
hilfsreich.
Das versprochene Bier (kann auch etwas anderes sein) paste ich beim naechsten Treffen gerne weiter :)

Danke und Gruss
Cem 


"A. Pagaltzis" <pagaltzis at gmx.de> schrieb am Thu, 29 Apr 2004 15:38:01 +0200:
> * Wolfgang Weisselberg <pl3rofb02 at sneakemail.com> [2004-04-29 15:11]:
> > Der Code ist nicht aequivalent.  Da keine Spezifikation
> > ausser dem Code selber vorhanden ist, ist alles ausser einer
> > Aequivalenzumformung zu dokumentieren.
> > 
> > Vergleiche:
> > 
> >     $_ = "aabbaa";
> >     %replaces = ( bb  => 'aa',
> >                   aaa => 'x', );
> > 
> >     $replaces_href = \%replaces;
> >     foreach my $from ( keys %$replaces_href ) {
> >         next unless /$from/;
> >         s/$from/$$replaces_href{$from}/g;
> >         delete $$replaces_href{$from};
> >     }
> >     print $_;
> > 
> > Bei *mir* kommt in *diesem* Falle 'xx' raus.
> 
> Bei mir nicht.
> 
>     $ perl -le'print for keys %{ { bb => "aa", aaa => "x" } }'
>     aaa
>     bb
> 
> Wie hübsch. Geht's auch besser?
> 
>     $ perl -le'print for keys %{ { bb => "aa", aaa => "x", foo => 1, bar => 2 } }'
>     bar
>     bb
>     aaa
>     foo
> 
> Ohh, fantastisch. Abhängig von den Ersetzungen geschehen diese in
> (für Anwenderbelange) zufälliger Reihenfolge..
> 
> Nett, nicht?
> 
> > Bei deinem Code auch?  Nein?  Dann ist er nicht aequivalent.
> 
> Die Spezifikation war allerdings in diesem Fall nicht in sich
> schlüssig..  natürlich hätte ich nicht erraten, sondern
> nachfragen sollen; da muss ich dir Recht geben.
> 
> > > Verstehe ich in diesem Fall noch weniger. Warum ergibt
> > > C<s/$from/.../> etwas anderes als C<s/\Q$from/.../> wenn
> > > C<$from = 's1'>?
> > 
> > Weil s1 von Lauf zu Lauf VARIABEL sein darf?
> 
> Was hat das mit der Frage zu tun? Das \Q wirkt sich nur innerhalb
> eines einzelnen Laufs aus.
> 
> -- 
> Gruss,
> Aristoteles
>  
> "Wer nicht über sich selbst lachen kann, nimmt das Leben nicht ernst genug."
> _______________________________________________
> Cologne-pm mailing list
> Cologne-pm at mail.pm.org
> http://mail.pm.org/mailman/listinfo/cologne-pm



-- 
| __| / _ \ / __|(_) | C e m   S a k a r y a l i
| _| |  _  |\__ \| | | Eupener Str. 159, Geb. 107
|___||_| |_||___/|_| | D-50933 Koeln GERMANY
Engineering GmbH     | Tel: +49 221/650 496 12 Fax: 22
http://www.easi.de   | mailto:cem.sakaryali at easi.de

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 
Type: application/octet-stream
Size: 0 bytes
Desc: not available
Url : http://mail.pm.org/pipermail/cologne-pm/attachments/20040429/b54f5a2b/attachment.obj


More information about the Cologne-pm mailing list