Thread Seriennummer (Buchstaben) hochzählen
(7 answers)
Opened by Gustl at 2014-01-27 14:27 2014-01-27T13:27:54 Gustl Das Inkrementieren von Strings beherrscht Perl von Haus aus. Leider funktioniert das bei Deiner Zahlen-Buchstaben-Kombi nicht direkt, da Perl dann nur die Zahl inkrementiert. Also: Buchstaben-Anteil extrahieren und diesen dann einzeln inkrementieren. Ungetestet: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 sub get_new_numbers{ my $anzahl = shift; my $last_sn = shift; # Seriennummer zerlegen my ($num,$str) = split(/(<=\d)(?=[A-Z])/,$last_sn); # Seriennummer inkrementieren und in Array schreiben my @back_array; push @back_array, $num.(++$str) foreach(1..$anzahl); return @back_array; } Einen Overflow des String-Inkrements fängt die Funktion jetzt noch nicht ab, aber dass ist laut Aufgabenstellung ja auch nicht gefordert. |