Thread aktuell laufende Schleife beenden (2 answers)
Opened by the-loader at 2006-09-16 15:47

Strat
 2006-09-23 14:22
#69968 #69968
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
Oft ist es hilfreich, der Schleife ein Label zu verpassen, und dann next/last/redo Label zu verwenden. Ein next/last/redo ohne Label wirkt naemlich nur auf die innerste Schleife
Code: (dl )
1
2
3
4
5
6
7
VALUE:
for my $value (1..10) {
....
if( $value % 2 == 0 ) { # wenn gerade zahl
next VALUE;
}
} # for


Hier sieht man das Problem deutlich:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
for my $value (1..10) {
print "Before: $value\n";
{ # block, also acts as loop
print "inside1: $value\n";
if( $value % 2 == 0 ) {
print "inside2: $value -> skip\n";
next; # bezieht sich nur auf block, nicht auf for
} # if
print "inside 3: $value\n";
} # block
print "after: $value\n";
} # for
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/

View full thread aktuell laufende Schleife beenden