La boîte à perl - partie 1

A partir d'un programme donné au préalable, nous devions y construire un programme qui permet le filtrage du contenu textuel des balises DESCRIPTION et qui crée en sortie un fichier structuré (XML) contenant une trace du traitement réalisé sur les fichiers. Le programme de départ permet de lire une arborescence de fichiers.

Le programme de départ étant donné et expliqué par le professeur ne sera pas soumis à une description détaillée. Cependant la partie liée au traitement de filtrage est analysée ci-dessous :

      # on ouvre le fichier dont le nom est contenu dans la variable $file.
      open (FILEIN,"$file");

      #Pour chaque ligne lu dans le fichier FILEIN, on va appliquer les opérations suivantes :
      while ($ligne = <FILEIN>){

      #Si la ligne que le programme lit contient la balise < description > suivie d'un ou plusieurs caractères quelconques excepté un chevron ouvrant et suivie par <\/description> alors
      if ($ligne=~/<description>([^<]+)<\/description>/) {

      #la variable $filtr contiendra les balises indiquées entre guillemets et entre eux la variable $file qui réfère au nom du fichier lu et la variable $1 qui renvoie au contenu textuel mémorisé grâce aux parenthèses lors de la recherche faite ci-dessus.
      $filtr = "<FICHIER><NOM>".$file."</NOM><CONTENU>".$1."</CONTENU></FICHIER>";

      #on concatène la variable $filtr à la variable de sortie $DUMPFULL1. La variable $DUMPFULL1 contiendra au final toutes les adresses et tous les contenus de la balise description (soit tous les $filtr obtenus).
      $DUMPFULL1 = $DUMPFULL1 . $filtr ;

      #fin de la condition if
      }

      #fin de while
      }

      #on ferme le fichier FILEIN
      close (FILEIN);


Cette partie détaillée ci-dessus fait partie de ce programme perl (cliquer dessus pour le télécharger).
Lors de son utilisation, le résultat obtenu est celui-ci.
En incluant cette feuille de style, on obtient un fichier de sortie comme celui-ci.