Exercice 1 :

  1. Vous choisirez cinq formes graphiques différentes.
  2. Vous construirez ensuite un programme perl qui prend en entrée le fichier catégorisé et un nombre donné.
  3. Ce nombre définira la longueur de la fenêtre de mots que vous souhaitez extraire autour de la forme pôle.
  4. Vous appliquerez ce programme sur votre fichier catégorisé.
    #!/usr/bin/perl 
    
    # on demande le fichier étudié 
    print "nom du fichier à analyser ? "; 
    my $file=<STDIN>; 
    chomp ($file); 
    
    # puis le pole print "Donnez moi un pole à trouver : "; 
    my $pole=<STDIN>; 
    chomp ($pole); 
    
    # puis le contexte 
    print "Donnez moi le nombre de mots autour du pole : "; 
    my $nbmots=<STDIN>; 
    chomp ($nbmots); 
    
    open(FICHIERECRITURE, ">resultat.html"); 
    #on écrit le fichier HTML 
    
    print FICHIERECRITURE "<html>\n<head><meta http-equiv=\"Content-Type\" content=\"text/html;charset=iso-8859-1\"/><style type=\"text/css\">body { font-family: \"arial\" }</style></head><body bgcolor=\"black\">\n"; 
    
    # puis un tableau 
    print FICHIERECRITURE "<table align=\"center\" border=\"1\" bgcolor=\"white\">\n"; 
    
    #On écrit la ligne d'entête du tableau dans le puis l'en-tête 
    print FICHIERECRITURE "<tr><td align=\"center\"><b>Contexte n&deg;</b></td><td align=\"right\"><b>Contexte gauche</b></td><td align=\"center\"><b>Pole</b></td><td align=\"left\"><b>Contexte droit</b></td></tr>\n"; 
    
    #il faut maintenant chercher les contextes my $compteur=0; 
    open(FICHIERANALYSE, "$file"); 
    
    #Tant qu'il ya des lignes 
    while (my $ligne=<FICHIERANALYSE>) { 	
    	#Tant que la ligne contient le mot recherché 	
    	while ($ligne=~/\b$pole\/[A-Z]+/gi) { 		
    		++$compteur; 	
    		my $cg=$`; 		
    		my $mot=$&; 		
    		my $cd=$'; 		
    		
    		#On écrit les résultat dans le fichier HTML 		
    		print FICHIERECRITURE "<tr><td align=\"center\"><font color=\"green\"><b>$compteur</b></font></td><td 		align=\"right\">$cg</td><td align=\"center\"><font color=\"red\"><b>$mot</b></font></td><td 		align=\"left\">$cd</td></tr>\n"; 	
    	}
    } 
    
    #On écrit la fin du tableau et du fichier 
    print FICHIERECRITURE "</table>\n</body>\n</html>\n"; 
    close(FICHIERECRITURE); 
    close(FICHIERANALYSE);
    



Beliao julie 2010-06-07