Informatique II Structures de données Prof. F. Grize TP11 Expressions régulières. Téléchargez l’archive codeTP11.zip sur le site web du cours, décompressez-la et utilisez l’application tp11ex1.py qu’elle contient afin de valider les expressions régulières et textes des exercices 1 et 2 de ce TP. Exercice 1: Ecrivez les expressions régulières qui valident les phrases ci-dessous. Utilisez l’application afin de valider vos expressions régulières. 1. 2. 3. un mot qui commence par au moins un chiffre (p.ex. 2eme); un mot d’exactement 3 caractères (p.ex. nom); un acronyme d'au moins 3 caractères constitué de lettres majuscules (p.ex. ISI); 4. une phrase qui commence par au moins une lettre majuscule (p.ex. Lausanne); 5. une phrase qui commence par “en” (ou “En”) et suivi par exactement 4 chiffres (p.ex. en 2010); 6. une phrase qui contient des chiffres entre parenthèses avec un symbole plus (“+”) qui peut précéder les chiffres (p.ex. (+41)); 7. idem que 5, mais qui autorise aussi n’importe quel autre caractère entre les chiffres et les parenthèses (p.ex.( 2eme )); 8. un mot qui commence ou finit par au moins un chiffre (p.ex. M2); 9. un numéro de téléphone lausannoise sous sa forme locale: p.ex. 021 nnn nn nn 10. un numéro de téléphone suisse sous sa forme internationale, les groupes de chiffres peuvent être séparés par des espaces, des traits d'union ou des points: p.ex. (+41) nn nnn nn nn ou (+41) nn-nnn-nn-nn 11. une adresse e-mail: composée d’un [email protected]. Où l’identifiant est composé de minuscules, de chiffres ou de traits d’union; il peut contenir au plus un point et commence forcément par une lettre. Le domaine a la même syntaxe que l’identifiant et l’extension est une suite d’au moins 2 et d'au plus 4 lettres minuscules; 12. un nombre sous la notation romaine compris entre 24 et 30 inclusivement. Exercice 2: Ecrivez un script Python qui ouvre un ficher contenant un programme Python, qui analyse son contenu et: 1. imprime la liste des noms des méthodes, procédures ou fonctions définies dans le programme; 2. imprime la liste des toutes les méthodes dont les paramètres sont sans valeur par défaut; 1/2 3. 4. imprime la liste des méthodes qui ont au moins un paramètre avec une valeur numérique par défaut; imprime les noms des variables ou des attributs de classe qui sont initialisés ou augmentés (+=) par une valeur simple, soit: un nombre entier, une liste vide ou une chaîne de caractères. Attention, ce ne peut être ni une expression complexe, ni une fonction, ni une méthode. Le nom du fichier à analyser est demandé à l’utilisateur. Pour valider cet exercice veuillez utiliser le programme source du corrigé du TP06 «Sudoku». 2/2