Switch

Use el módulo Switch (no es necesario en las versiones posteriores a la 5.10):

lhp@europa:~/projects/perl/src/perltesting$ cat switch.pl
#!/usr/bin/perl -w
use strict;
use Perl6::Say;
use Switch;

my $val = <>;
chomp($val);

switch ($val) {
  case 1          { say "number 1" }
  case "a"        { say "string a" }
  case [1..10,42] { say "number in list" }
  case /^\w+$/    { say "pattern" }
  else            { say "previous case not true" }
}
Veamos algunas ejecuciones:
lhp@europa:~/projects/perl/src/perltesting$ ./switch.pl
5
number in list
lhp@europa:~/projects/perl/src/perltesting$ ./switch.pl
12bc
pattern
lhp@europa:~/projects/perl/src/perltesting$ ./switch.pl
.2.
previous case not true

Casiano Rodríguez León
Licencia de Creative Commons
Principios de Programación Imperativa, Funcional y Orientada a Objetos Una Introducción en Perl/Una Introducción a Perl
por Casiano Rodríguez León is licensed under a Creative Commons Reconocimiento 3.0 Unported License.

Permissions beyond the scope of this license may be available at http://campusvirtual.ull.es/ocw/course/view.php?id=43.
2012-06-19