Programmation PERL Cours n 1 Nassim ZELLAL 20132014

  • Slides: 18
Download presentation
Programmation PERL Cours n° 1 Nassim ZELLAL 2013/2014

Programmation PERL Cours n° 1 Nassim ZELLAL 2013/2014

Perl - généralités n Perl est un langage de programmation créé par Larry Wall

Perl - généralités n Perl est un langage de programmation créé par Larry Wall en 1987. n Langage de programmation procédurale particulièrement adapté au traitement des données textuelles. n Langage interprété, il n'y a pas de phase intermédiaire de compilation car l'interpréteur, qui s’appelle « perl » en minuscules compile le code sans que le programmeur ne s'en rende compte puis, il l'exécute.

Mon premier script PERL Ouvrir un éditeur de texte (Notepad++). Écrire dans un fichier

Mon premier script PERL Ouvrir un éditeur de texte (Notepad++). Écrire dans un fichier (test. pl) ce qui suit : n #!/usr/bin/perl print "Je suis étudiant en informatique ! n"; Pour l’exécuter, ouvrir une invite de commandes et lancer le script perl : perl test. pl

Mon deuxième script PERL (passage des paramètres ou arguments avec la variable spéciale $ARGV[x])

Mon deuxième script PERL (passage des paramètres ou arguments avec la variable spéciale $ARGV[x]) Écrire dans un fichier (test 2. pl) ce qui suit : n #!/usr/bin/perl print "Je suis étudiant en $ARGV[0] et je m’appelle $ARGV[1]! n"; Pour l’exécuter, ouvrir une invite de commandes et lancer le script perl : perl test 2. pl

Commentaires en PERL Écrire dans un fichier (test 3. pl) ce qui suit :

Commentaires en PERL Écrire dans un fichier (test 3. pl) ce qui suit : n # ceci est un commentaire print "Coucou !n" Pour l’exécuter, ouvrir une invite de commandes et lancer le script perl : perl test 3. pl Remarque : raccourci sous Notepad++ : Ctrl + q (valable aussi pour les commentaires multilignes)

Trois types de variables en PERL n Scalaire n Tableau (tableau de scalaire) n

Trois types de variables en PERL n Scalaire n Tableau (tableau de scalaire) n Tableau associatif (table de hachage)

Nommage des variables n n n lettres (minuscules ou majuscules, ASCII de préférence) Chiffres

Nommage des variables n n n lettres (minuscules ou majuscules, ASCII de préférence) Chiffres _ (tiret bas) précédé de $, @ ou % Exemples : $ma. Chaine $Ma. Chaine 2 $Ma_2 eme_Chaine $2 eme_chaine $ma chaine 2 $ma-chaine

Affectation d’une valeur à une variable n n n variable = valeur Exemples :

Affectation d’une valeur à une variable n n n variable = valeur Exemples : $machaine = "toto"; $monnombre = 33; @maliste = ('toto', 'titi'); %notes = ("cours 1", 15, "cours 2", 18, "cours 3", 11);

Perl - scalaires n Une variable de type scalaire est une : n chaîne

Perl - scalaires n Une variable de type scalaire est une : n chaîne de caractères n nombre

Perl - scalaires - chaînes de caractères 'Coucou !' une chaîne littérale n "Coucou

Perl - scalaires - chaînes de caractères 'Coucou !' une chaîne littérale n "Coucou !" n 'Coucoun' n n'est pas interprété n "Coucoun" n est interprété comme le retour à la ligne n "tu es "magnifique" échappement des " n "je veux utiliser un \" est interprété comme un caractère spécial "d'échappement (déspécialisation) " n n "" une chaîne vide

Perl - scalaires - opérateurs de comparaison de chaînes de caractères n n n

Perl - scalaires - opérateurs de comparaison de chaînes de caractères n n n n . concaténation x multiplication (de chaîne de caractères) Opérateurs de comparaison : eq égalité => Retourne 1 si $x contient la chaîne "Bonjour", sinon 0 (valeur) ne inégalité => Retourne 1 si $x est différente de "Toto", sinon 0 (valeur) lt plus petit que (less than) => Retourne 1 si $x est inférieure à "Toto", sinon 0 (ordre alphabétique) gt plus grand que (greater than) => Retourne 1 si $x est supérieure à "Toto", sinon 0 (ordre alphabétique) le plus petit ou égal à (less than or equal) => Retourne 1 si $x est inférieure ou égale à "Toto", sinon 0 (ordre alphabétique) ge plus grand ou égal à (greater than or equal) => Retourne 1 si $x est supérieure ou égale à "Toto", sinon 0 (ordre alphabétique)

Perl - scalaires - opérations sur les chaînes de caractères n Operations : n

Perl - scalaires - opérations sur les chaînes de caractères n Operations : n "mon". "chien" => "mon chien" n "a"x 3 => "aaa"

Perl - scalaires - opérations sur les nombres n n n n n $a

Perl - scalaires - opérations sur les nombres n n n n n $a = (1 + 2) * 3 - 4; # retourne 5 dans $a (règle de priorité) $a = 1 + 2 * 3 - 4; # retourne 3 dans $a (règle de priorité) $a= 8 - 4 - 2; retourne 2 et non 6 (règle d’associativité) $a = 7 / 8; # Divise 7 par 8 et met 0. 875 dans $a $a = 9 ** 10; # 9 à la puissance 10 $a = 5 % 2; # le reste de 5 divisé par 2 (modulo) ++$a; # retourne $a augmenté de 1 (pré-incrémentation) $a++; # retourne $a avant de l'augmenter de 1 (post-incrémentation) --$a; # retourne $a diminué de 1 $a--; # retourne $a avant de le diminuer de 1

Perl - scalaires - opérateurs de comparaison de nombres n n n $a ==

Perl - scalaires - opérateurs de comparaison de nombres n n n $a == $b # Retourne vrai si $a est égal à $b $a != $b # Retourne vrai si $a est différent de $b $a > $b # Retourne vrai si $a est supérieur à $b $a < $b # Retourne vrai si $a est inférieur à $b $a >= $b # Retourne vrai si $a est supérieur ou égal à $b $a <= $b # Retourne vrai si $a est inférieur ou égal à $b

Perl - opérateurs d’assignation n $a = $b; # Assigne $b à $a n

Perl - opérateurs d’assignation n $a = $b; # Assigne $b à $a n $a += $b; # ajoute $b à $a et met le résultat dans $a n $a -= $b; # soustrait $b de $a et met le résultat dans $a n $a. = $b; # ajoute la chaine $b à la fin de $a

Perl - opérateurs logiques (booléens) n || OU logique => Vérifie qu'une des conditions

Perl - opérateurs logiques (booléens) n || OU logique => Vérifie qu'une des conditions est réalisée ((condition 1)||(condition 2)) n && ET logique => Vérifie que toutes les conditions sont réalisées ((condition 1)&&(condition 2)) n ! NON logique => Inverse l'état d'une variable booléenne (retourne la valeur 1 si la variable vaut 0, 0 si elle vaut 1) (!condition) Remarque: depuis Perl 5 une notation plus agréable existe : or(au lieu de ||), and(au lieu de &&), not(au lieu de !)

Adresse de téléchargement de PERL http: //www. activestate. com/activeperl/downloads http: //notepad-plus. org/download/v 6. 5.

Adresse de téléchargement de PERL http: //www. activestate. com/activeperl/downloads http: //notepad-plus. org/download/v 6. 5. 3. html

Mon courriel nassim_zellal@yahoo. fr

Mon courriel nassim_zellal@yahoo. fr