Thread Kreditkarten Maskierung via RegEx
(12 answers)
Opened by marcus74 at 2015-02-17 16:19 Quote Das ist ja auch mal ein cooles Konstrukt, was ich noch nicht gesehen habe :) Warum hier eine Schleife? Falls die Datei nicht gelöscht werden kann, wie z.B. bei Berechtigungsproblemen, wird sich dein Programm in eine Endlosschleife hängen. Und wo wir bei überflüssigen Schleifen sind: Hast du tatsächlich mehrere Kreditkartennummern pro Zeile? Ansonsten würde ich mir auch die andere Schleife sparen mit dem regulären Ausdruck. Dann kommt man nämlich um das "$1" ganz herum. Die Probleme mit dem "$1" hat Raubtier ja schon angesprochen: In Perl 5 ist es leider so, dass diese Variable global ist und z.B. nach einem Library Call nicht mehr den alten Wert haben muss. Hier also ohne Schleife: Code (perl): (dl
)
1 2 3 4 my ($creditcard) = $row =~ /(3[47]\d{13})/ or next; # In der nächsten Zeile weitermachen if (is_valid($creditcard)) {...} Lieblingsmodule: IPC::System::Simple, Path::Class
|