#/usr/bin/perl
open (PAT, $ARGV[0]);

while ($ligne=<PAT>) {
    chomp $ligne;
    my $i=0;
    while ($ligne =~ m/ /g) {$i++};
    $ligne=~s/ //g;
#    print "il y a $i blancs dans $ligne\n"; 
    open(FIC,$ARGV[1]);
    while ($rangee=<FIC>) {
	$rangee=~/(.+)\t(.+)\t(.+)/;
	my $tok=$1;
	my $pos=$3;
	if ($pos!~/PCTF/) { 
	    push(@listepos,$pos);
	    push(@listetoken,$tok);
	}
	else {
#	    print "@listepos\n";
#	    print "@listetoken\n";
	    $liste_en_scalaire="";
	    for ($j=0;$j<=$#listepos-$i;$j++) {
		@temporaire=@listepos[$j..$j+$i];
		foreach $temporaire (@temporaire) {
		    $liste_en_scalaire=$liste_en_scalaire.$temporaire;
		    # ou $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);
}

close(PAT);

