> -----Original Message----- > From: Gajo Csaba [mailto:[EMAIL PROTECTED]] > Sent: Monday, November 04, 2002 9:18 AM > To: perl-beginners > Subject: The basics of SWITCH > > > Hi, I have a problem with SWITCH. I wrote this, I think > it's clear to anzone what it should do: > > print "Type in a number 1-5: "; > $s = <STDIN>; > SWITCH;
Your label needs a colon, not a semicolon SWITCH: > { > if ($s == 1) { print "one\n"; last SWITCH; } > if ($s == 2) { print "two\n"; last SWITCH; } > if ($s == 3) { print "three\n"; last SWITCH; } > if ($s == 4) { print "four\n"; last SWITCH; } > if ($s == 5) { print "five\n"; last SWITCH; } > } > > And I get an error message saying "Label not found > for "last SWITCH" at line 11. <STDIN> chunk 1." (with line > 11 being the first line of the chunk) > > So what's wrong? > > Also, how can I do something like in bash, where I have > options 1), 2)... and also *). That is, how can I do that > *) thing? :) Just put your default case before the closing brace: ... if ($s == 5) { print "five\n"; last SWITCH; } print "Default case"; # if no previous match } -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]