open(FILE,"$ARGV[0]"); #l'entree est le fichier étiqueté par Cordial
open (OUT, ">>:encoding(iso-8859-1)", "sortie.txt");
my @lignes=<FILE>; #sauvegarder chaque ligne du fichier dans une liste Lignes
close(FILE);
while (@lignes) { #pour la ligne du fichier
    my $ligne=shift(@lignes);#supprimer la premiere ligne et sauvegarder cette ligne dans le variable $ligne
    chomp $ligne;
    my $sequence="";#créer le variable sequence pour sauvegarder ce qui correspondent au motif
    my $longueur=0;#compter le longueur de la sequence
    if ( $ligne =~ /^([^\t]+)\t[^\t]+\t$ARGV[1]/) {#if la ligne supprimee contient le premier element du patron
	 $sequence.=$1;#sauvegarder le token correspondant au sequence
	 $longueur++;
	 my $indice=1;#initier l'indice=1
	 my $stop=1;
	 while (($indice < $#ARGV) and ($stop == 1)) {#if l'indice < l'indice du dernier element du patron
	     my $nextligne=$lignes[$indice-1];#On se positionne dans la prochaine ligne
	     if ( $nextligne =~ /^([^\t]+)\t[^\t]+\t$ARGV[$indice+1]/) {#if cette ligne contient le deuxième élément du patron
		 $sequence.=" ".$1;#ajouter une espace et le token correspondant 
		 $longueur++;
	     }
	     else {
		 $stop=0;#sinon, on arrête on et recommence par trouver la ligne qui contient le premier element du patron
	     }
	     $indice++;
	 }
	 if ($longueur == $#ARGV) {
	     print OUT "$sequence\n";
	 }
     }
}

