#/usr/bin/perl
###   BAO3: extraction de patrons sur sorties Cordial
#Lecture du fichier et mise en colonne du fichier
open (TEXTE, $ARGV[0]);
while (my $ligne=<TEXTE>){
	if ($ligne=~/\t/g){ #On ne traite que la ligne qui contiennent une tabulation (issue de cordial)
	#@token=()
	#Il manque des trucs ici!!!!
		chomp($ligne);
		$ligne=~s/\r//g;
		my @liste= split(/\t/, $ligne); #On découpe la ligne via les tabulations: résutats une liste de 3 éléments (FORME, LEMME, POS)
		#$liste[0]<- FORME; $liste[1]<- LEMME; $liste[2]<- POS
			if ($liste[2]!~/PCTF/) {
				push (@token, $liste[0]);
				push (@lemme, $liste[1]);
				push (@pos, $liste[2]);
			}
			else {
				#print "@token\n";
				#print "appuie sur touche pour continuer \n";
				#my $reponse1=<STDIN>;
				#print "@lemme\n";
				my $suite_de_pos=join(" ",@pos);
				#print "$suite_de_pos\n";
				open (PATRON, $ARGV[1]);
				while (my $patron=<PATRON>) {
					chomp($patron);
					$patron=~s/\r//g;
				my $compteur=0;	
					while ($suite_de_pos=~/$patron/g) {
					$compteur++;
					my $avant=$`;
					my $j=0;
					while ($avant=~/ /g) {
						$j++;									
					}
					
					#print "Voici la suite avant la correspondance: $avant \n";
					#print "Voici POS : $suite_de_pos \n";
					#print "Voici Patron: $patron \n";
					#print " Return!! \n";
					#my $rep=<STDIN>;
					my $k=0;
					while ($patron=~/ /g) {
						$k++;
					}
					print "@token[$j..$j+$k]\n";
					#print "Sur le patron syntaxique suivant $suite_de_pos je cherche $patron \n: il y a $compteur correspondance(s) \n";
					#my $rep=<STDIN>;					
					}
				}
				close (PATRON);				
		#Quand on est arrivé sur une Punct on vide des listes
				@token=();
				@lemme=();
				@pos=();
				
			}
	}
}