#!/user/bin/perl
#Programme de Jean.Michel  DAUBE
#********** First Etape*****************
open (PATRON, $ARGV[0]);
while ($ligne=<PATRON>)
{  
	chomp $ligne;
	my $i=0;
	while($ligne =~ m/ /g){$i++};
	$ligne=~s/ //g;
#	print "il y a $i blancs dans $ligne\n";  #on ne cherchera que les correspondances de la ligne aves les suites de $i+1 du fichier etiquet
# ***********Second Etape**************
open  (FIC_CORDIAL, $ARGV[1]);
while($rangee=<FIC_CORDIAL>)
{	
	$rangee=~/(.+)\t(.+)\t(.+)/;
	my $tok=$1; #ici, on pointe et substitue la premiere valeur de la linge precedente
	my $pos=$3; # ici, on pointe sur la 3eme valeur de la ligne precedente
	if (($pos !~/PCTFAIB/) && ($pos !~/PCTFORTE/))
	{
		push (@listepos, $pos);
		push (@listetoken,$tok);
	}
	else 
	{
	#	print "@listepos\n";
	#	print "@listetoken\n";
	#exit;
	$liste_en_scalaire="";
	for ($j=0;$j<=$#listepos-$i;$j++)
	{@temporaire=@listepos[$j..$j+$i];
	 foreach $temporaire (@temporaire){
			#$liste_en_scalaire.=$temporaire;
	$liste_en_scalaire=$liste_en_scalaire.$temporaire;
		}
		if ($liste_en_scalaire=~/$ligne/)
			{ 
				$k=$j+$i;
				$extraction=join(" ",@listetoken[$j..$k]);
				print $extraction,"\n";
			}
			$liste_en_scalaire="";
	}
		@listepos=();
		@listetoken=();
	}
}	
	close (FIC_CORDIAL);
}
close(PATRON);

