Perl : Fonctions - Programmation Orientée Système

Transcription

Perl : Fonctions - Programmation Orientée Système
Perl : Fonctions
La syntaxe générale est la suivante : sub nom {Instructions;}
Les arguments de la fonction sont contenus dans le tableau @_
La valeur de retour (optionnelle) est indiquée par le mot clé return
(quelques) Fonctions prédéfinies :
cos, log, exp, sqrt, int, rand, abs
chop EXPR supprime le dernier caractère (et le retourne)
chomp EXPR supprime tous les caractères correspondant à $/ en
fin de chaîne (ou expression)
length EXPR : taille de la chaîne
uc EXPR (resp. lc) : retourne la chaîne tout en majuscules (resp. minu
ucfirst EXPR (resp. lcfirst) retourne la chaîne en forçant la
première lettre en majuscules (resp. minuscules)
©EPFL 2003–2015
Jean-Cédric Chappelier
ÉC O L E P O L Y T E C H N I Q U E
FÉ DÉR A L E D E L A U S A N N E
split /PATTERN/, EXPR, LIMIT découpe la chaîne EXPR en une
liste (qui est retournée) en utilisant l’expression régulière PATTERN
Programmation Orientée Système – Fiches Résumé – 21 / 1
Perl : Fonctions (2)
index STR, SUBSTR, POS retourne la première position où
SUBSTR apparaît dans STR après la position POS
substr EXPR, POS, LONG, REPLACEMENT : renvoie (ou remplace)
la sous-chaîne de EXPR qui commence à la position POS et de
longueur LONG
join EXPR, TAB : fait l’inverse de split : reconstruit la chaîne
pop TAB supprime et retourne le dernier élément d’un tableau.
Sans argument, dépile @ARGV dans le programme principal et @_
dans une fonction
push TAB,LIST ajoute les éléments de la liste à la fin du tableau
shift : comme pop mais agit sur le premier élément du tableau
de même, unshift est similaire à push
©EPFL 2003–2015
Jean-Cédric Chappelier
ÉC O L E P O L Y T E C H N I Q U E
FÉ DÉR A L E D E L A U S A N N E
reverse retourne le tableau ordonné dans l’autre sens
Sur une table, construit la table « inverse » (ou « réciproque »)
index et valeurs sont inversées
Programmation Orientée Système – Fiches Résumé – 22 / 1
Perl : Fonctions (3)
splice TAB, POS, LONG, LIST
remplace par LIST et retourne la sous-liste de TAB de longueur
LONG commençant à l’index POS.
sort FUNCT TAB retourne un tableau trié au sens de FUNCT (par
défaut : au sens des chaînes de caractères)
values TABLE retourne (dans un ordre quelconque) le tableau des
valeurs d’une table associative
keys TABLE retourne (dans un ordre quelconque) le tableau des
clés d’une table associative
exists ELEMT teste si un élément existe dans une table ou un tableau
delete ELEMT supprime un élément d’une table ou d’un tableau
die MSG quitte le programme en envoyant un message d’erreur.
©EPFL 2003–2015
Jean-Cédric Chappelier
ÉC O L E P O L Y T E C H N I Q U E
FÉ DÉR A L E D E L A U S A N N E
sleep N : attend N secondes avant de continuer.
Programmation Orientée Système – Fiches Résumé – 23 / 1