extract-patron-cordial-nom-prep-nom.pl
#!/usr/bin/perl -w ##On lance comme cela: perl extract-patron-cordial-nom-prep-nom.pl culture-un.cnr > culture-c-NOM-PREP-NOM.txt ##On lance comme cela: perl extract-patron-cordial-nom-prep-nom.pl livres-un.cnr > livres-c-NOM-PREP-NOM.txt use locale; #caracteres accentues open(FILE,"$ARGV[0]"); #-------------------------------------------- # le patron cherché ici est du type NOM ADJ"; # le modifier pour extraire NOM PREP NOM #-------------------------------------------- my @lignes=<FILE>; close(FILE); while (@lignes) { my $ligne=shift(@lignes); chomp $ligne; my $sequence=""; my $longueur=0; if ( $ligne =~ /^([^\t]+)\t[^\t]+\tNC.*/) { #recherche tous les noms my $forme=$1; #récupère les formes des noms $sequence.=$forme; $longueur=1; my $nextligne=$lignes[0]; if ( $nextligne =~/^([^\t]+)\t[^\t]+\tPREP.*/) { my $forme=$1; $sequence.=" ".$forme; $longueur=2; my $nextligne=$lignes[1]; if ( $nextligne =~ /^([^\t]+)\t[^\t]+\tNC.*/) { my $forme=$1; $sequence.=" ".$forme; $longueur=3; } } } if ($longueur == 3) { #test: est-ce q j'ai réussi à construire une séq nom adj ? print $sequence."\n"; } }