Leser: 24
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
#!/usr/bin/perl -w use strict; use diagnostics; my %hash = ( VERTRAG1 => '123', VERTRAG2 => '345', VERTRAG3 => '678', VERTRAG4 => '91011', FOO => '91011', BAR => '91011', ); foreach my $temp (sort {substr ($b,7) <=> substr ($a,7)} grep {/^VERTRAG(\d+)$/ && $1 < 3} keys %hash) { print "Untersuche $temp\n"; }
2010-01-17T12:04:54 bianca[...]
Meine große Unsicherheit liegt im grep{}. liegt in $1 tatsächlich der Wert aus der Regex-Klammer vor dem and oder ist das Zufall?
[...]
1 2 3
foreach my $temp (grep {/^VERTRAG(\d+)$/ && abs $1-$gesucht == 1} keys %hash) { print "Untersuche $temp\n"; }
1 2 3 4 5 6
my $prefix = 'VERTRAG'; foreach my $temp ( grep {0 == index($_, $prefix) && substr($_, length $prefix) < 3} keys %hash ) { print "Untersuche $temp\n"; }