Thread Präfixe aus Liste herausarbeiten
(11 answers)
Opened by Philipp at 2012-01-30 22:06
pq hat recht. Ich habe mich aber mal am Raten versucht und habe folgenden Vorschlag:
Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 #! /usr/bin/perl # vim:ts=4 sw=4 sts=4 et nu fdc=3: use strict; use warnings; use Tie::IxHash; # keep hash sorted; see perldoc Tie::IxHash tie my %part, 'Tie::IxHash'; # read data while ( my $line = <DATA> ) { # split each number into a base (variable length) # and a "postfix" which is the last digit of the number my ( $base, $postfix ) = $line =~ m/(\d+?)(\d)$/; # store the data in an HoA; see perldoc perldsc push @{ $part{$base} }, $postfix; } # create output for my $base ( keys %part ) { my @array = @{ $part{$base} }; # if we have ten postfixes for the base, # just print the base; we do NOT care if # all postfixes are different or not. if ( 10 == @array ) { print $base, $/; } else { print $base.$_.$/ for @array; } } __DATA__ 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 2343 2344 345670 345671 345672 345673 345674 345675 345676 345677 345678 345679 45 46 Wenn die restlichen Bedingungen/Voraussetzungen/Anforderungen bekannt sind, muss das wahrscheinlich wiederum angepasst werden. meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen! |