in reply to Re^7: Ignore a range of numbers ina List
in thread Ignore a range of numbers ina List
I'm actually running these tests on 5.14.4, and the syntax you've shown is exactly what I was after to shorten the loop:
This is working fine on the few data samples that I used.for my $num (@$aref) { $flag = 1 if $num == 6; push $flag ? \@temp : \@result, $num; do {@temp = (); $flag = 0;} if $num == 7; } } push @result, @temp; print Dumper \@result;
I just did not think about using array refs instead of arrays to get the ternary operator to work in this context. Thank you, AnomalousMonk, for showing it, I've just learned something.
That said, the fact that I did not find the right syntax to do it with the ternary operator prompted me to use an array ref in another fashion (instead of a $flag) which is quite concise and, IMHO, relatively elegant.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^9: Ignore a range of numbers ina List
by AnomalousMonk (Archbishop) on Jun 26, 2017 at 22:18 UTC | |
by Laurent_R (Canon) on Jun 26, 2017 at 22:58 UTC |