|

Initiation au Perl
  
5. Les Opérateurs
5.1 Opérateurs d'affectation
Comme on l'a vu dans les exemples précédents, l'opérateur d'affectation est le
'='.
$a = <arg> # Assigne quelque chose à $a
$a = $b; # Assigne $b à $a
$a += $b; # Ajoute $b à $a
$a -= $b; # Soustrait $b à $a
$a .= $b; # Concatene $b à $a
5.2 Opérateurs arithmétiques
Le Perl utilise les même notations que le langage C :
$a = 1 + 2; # Ajoute 1 à 2, et l'affecte à $a
$a = 3 - 4; # Soustrait 4 à 3, et l'affecte à $a
$a = 5 * 6; # Multiplie 5 et 6, et l'affecte à $a
$a = 7 / 8; # Divise 7 par 8, et affecte 0,875 à $a
$a = 9 **5; # Eleve 9 à la cinquième puissance
$a = 5 % 2; # Le reste de 5 divise par deux (division euclidienne)
++$a; # Incrémentation de $a, puis on retourne la valeur $a
$a++; # On retourne la valeur $a puis incrémentation de $a
--$a; # Décrémentation de $a, puis on retourne la valeur $a
$a--; # On retourne la valeur $a puis décrémentation de $a
5.4 Opérateurs logiques et de comparaison
5.4.1 Opérateurs logiques
&& ET logique Ex: ($a && $b)
|| OU logique Ex: ($a || $b)
! NON Ex: ! ($a)
Les fonctions logiques && et || n'évaluent pas la seconde condition si la première suffit à déterminer la solution.
5.4.2 Opérateurs de comparaison
| nombres | chaînes |
égalité | == | eq |
inégalité | != | ne |
plus grand que | > | gt |
plus grand ou égal | >= | ge |
plus petit que | < | lt |
plus petit ou égal | <= | le |
comparaison avec résultat signé | <=> | cmp |
Le résultat des opérations <=> et cmp est :
-1 si l'opérande de gauche est inférieure à l'opérande de droite,
0 si elles sont égales,
+1 si l'opérande de gauche est supérieure à l'opérande de droite.
5.5 Opérateurs sur les tableaux
scalar(@<nom du tableau>)
# Retourne le nombre d'éléments contenus par le tableau
shift(@<nom du tableau>)
# Retourne et retire le premier élément du tableau
pop(@<nom du tableau>)
# Retourne et retire le dernier élément du tableau
unshift(@<nom du tableau>,<liste>)
# Ajoute une liste au début du tableau
push(@<nom du tableau>,<liste>)
# Ajoute une liste à la fin du tableau
join("Model",@<nom du tableau>)
# Retourne la chaîne composées des éléments du tableau séparée par le Model
sort(@<nom du tableau>)
# Retourne le tableau trier dans l'ordre alphabétique
# Il est aussi possible de définir des fonctions de comparaison adaptées au trie souhaité.
reverse(@<nom du tableau>)
# Retourne l'inverse de l'ordre du tableau
Pour les tableau associatifs, il existe deux opérateurs :
values(%<nom du tableau>)
# Retourne une liste des valeurs associées au tableau
keys(%<nom du tableau>)
# Retourne une liste des clés associées au tableau
  
|
|