open(FILE,"$ARGV[0]");	# ouverture du fichier passé en argument en ligne de commande. 
#--------------------------------------------
# le patron cherché ici est du type NOM NOM";
#--------------------------------------------
my @lignes=<FILE>;	# On va mettre toutes les lignes du fichier dans une liste. Dans cette liste à chaque fois, on a trois formes : 1) la chaîne de caractères, 2) le lemme et 3) la catégorie.
close(FILE);
while (@lignes) {	# tant qu'il y a des éléments dans la liste (la liste va donc devoir se vider au bout d'un moment = il faut éliminer un à un les éléments jusqu'à épuisement), 
    my $ligne=shift(@lignes);	# on enlève les éléments de la liste un par un en les stockant dans la variable $ligne
    chomp $ligne; 	# on supprime le retour-chariot à chaque élément récupéré
    my $sequence="";	 
    my $longueur=0;		 
    if ($ligne =~ /^([^\t]+)\t[^\t]+\tN.*/) {		#  si la ligne  correspond à ce modèle :	 "debut de ligne / forme / tabulation / forme / tabulation / catégorie de la forme NC...*"
	 my $forme=$1;	#  si c'est un nom, on récupère la forme de la ligne analysée dans $1
	 $sequence.=$forme;	# on concatène dans la séquence finale qui nous intéresse
	 $longueur=1;	# le nombre de mot dans la séquence a une valeur absolue de 1
	 my $nextligne=$lignes[0];	#  il faut vérifier dans la ligne suivante s'il y a un N. La ligne suivante est à l'indice 0 dans le tableau de départ
	 if ( $nextligne =~ /^([^\t]+)\t[^\t]+\tN.*/) {	#  si la ligne suivante est un N...*
	     my $forme=$1;	# on récupère la forme correspondante dans $1
	     $sequence.=" ".$forme;	#  on concatène la séquence de deux formes N - N
	     $longueur=2;	# la longueur absolue est 2
	 }
    }
    if ($longueur == 2) {	#  si on obtient un séquence de longueur 2 (N - N)
	print $sequence,"\n";	# on l'imprime
    }
}

