Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 320
  • Last Modified:

unless


# Skip to numbers.
BEGINNING: while ($begin = shift @a) {
  print qq (inspecting $begin\n);
  #last BEGINNING if $begin =~ /BEGIN/;
  next BEGINNING unless $begin =~ /BEGIN/;
}

last with the if statement works fine.
What's wrong with the unless.  It doesn't ever
break out.  Thanks.
0
hank1
Asked:
hank1
1 Solution
 
ultimatemikeCommented:
For starters - Your "BEGINNING" label is the start of a while loop. It technically is working.  The unless statement is working and it's not going to beginning. However, the next command that it will execute will be starting the next iteration of the loop.

What your unless statement is saying is :  "Go to beginning, unless it matches the regular expression. But if it matches the regular expression, go to the start of the loop".  So both cases actually do the same thing.  The last statement with the if is probably the way you want to do it :)
0

Featured Post

Hire Technology Freelancers with Gigs

Work with freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely, and get projects done right.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now