Depuis la version 5.10 de Perl, il existe une instruction ayant la même fonction que le switch bien connu dans la plupart des langages. Avant cette version, il fallait « bidouiller » afin de retrouver un comportement similaire.

Voici un exemple d’utilisation ci-dessous.

use feature « switch »;

given ($chiffre)  {
  when (4)    { say « Le chiffre est 4. »; }
  when (5)    { say « Le chiffre est 5. »; }
  when (6)    { say « Le chiffre est 6. »; }
  default    { say « Le chiffre n’est pas 4, 5 ou 6. »; }
}

En C il faut écrire l’instruction « break » avant la fin de la condition. En Perl cette instruction est implicite. Elle n’est donc pas obligatoire.
Il existe aussi l’instruction « continue » qui permet d’aller au « when » suivant.
use feature « switch »;

given ($expression)  {
  when (/a/)    { say « Contient a »; continue}
  when (/b/)    { say « Contient b »; }
  when (/c/)    { say « Contient c »; }
  default    { say « Le chiffre n’est pas 4, 5 ou 6. »; }
}

Dans l’exemple ci-dessus si la variable $expression contient la lettre « a » alors le message « Contient a » s’affiche. Grâce au « continue » le prochain « when » est exécuté et si $expression contient la lettre « b » alors le message « Contient b » est affiché.

One Thought on “Le switch en Perl

  1. Cédric !!!! Tu me Bleuf 😀

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Post Navigation