Accueil  / Semaine 5 / Autoévaluation

Autoévaluation

Question 1

En théorie, les automates finis sont tous équivalents, qu’ils soient déterministes ou non, mais dans l’usage, ils se distinguent. Dans le contexte des expressions régulières, qu’est-ce qui est le plus rapide : une implémentation par automate fini déterministe ou une implémentation par automate fini non déterministe ? Expliquez votre réponse.

Question 2

(Vrai ou faux.) Pour utiliser les expressions régulières en Java, il faut utiliser le paquetage java.util.regex.

Question 3

Quelle est la différence entre
String[] resultat = s.split("\n");
et
String[] resultat = s.split("\\n"); ?

Question 4

Où se situe Java dans la hiérarchie de Chomsky ?

Question 5

Si un moteur d’expressions régulières supporte la syntaxe avec des parenthèses capturantes, où se situe la variante du langage qu’il supporte dans la hiérarchie de Chomsky ?

Question 6

Répondez à la question suivante.

Bonjour, je voudrais extraire d’une page HTML tous les liens. J’ai essayé ceci :

Pattern pattern = Pattern.compile("(<A HREF=).*(</A>)") ;

Matcher matcher = pattern.matcher(maChaine) ;

while(matcher.find())

System.out.println(matcher.group()) ;

J’obtiens comme résultat l’affichage de tout le texte contenu entre le 1er et le dernier lien (inclus). Il est évident que l’erreur vient du pattern, mais que dois-je faire pour obtenir le résultat escompté ?

Question 7

Expliquez la différence entre les deux expressions régulières suivantes : « cat|dog » et « (cat)|(dog) ».

Question 8

Supposons que vous cherchiez toutes les lignes dans un fichier se terminant par un espace, comment trouver ces lignes en supposant que votre éditeur de texte permet une sélection par expressions régulières sur la base des lignes ?

Question 9

Comment est-ce que je peux trouver tous les caractères qui ne font pas partie de l’ensemble ASCII ?

Question 10

Comment trouver tous les espaces doubles suivant un mot ?

Question 11

Comment trouver toutes les lignes débutant par un nombre impair d’espaces ? Comment est-ce que je peux sélectionner le dernier espace de ces séquences ?

Question 12

Comment sélectionner tous les espaces suivants un parenthèse ouvrante ?

Question 13

Comment trouver tous les mots se terminant par ’myname’ ?