#!/usr/bin/perl my $id="__jj1-constituicao"; use NAT::Client; my $client = NAT::Client->new( Local => "./$id"); $client->iterate( {Language =>'source'}, sub { my %p = @_; print "\n=== $p{word} : $p{count}\n"; for ((sort {$b->[2]<=>$a->[2]} @{$client->ngrams("$p{word} *")})[0..9]){ next unless $_; printf("%13s |", "$_->[2] $_->[1]"); for ((sort {$b->[3]<=>$a->[3]} @{$client->ngrams("$p{word} $_->[1] *")})[0..9]){ next unless $_; print ("| $_->[2] "); } print "\n"; } }); __END__ =head1 NAME jj-33 - example for ( PTD iterate) + (ngrams) =head1 SYNOPSIS use NAT::Client; my $client = NAT::Client->new( Local => "./$id"); $client->iterate( {options}, sub{}) for(@{ $client->ngrams("w1 *") } ){ } for(@{ $client->ngrams("w1 w2 *") } ){ } for(@{ $client->ngrams("w1 w2 w3 *") }){ } =head1 DESCRIPTION (Previously: jj-1 -> to create the corpus) Print the words and number of occurrences. Example of output: === primado : 1 1 do || estado === estado : 182 44 de || emergência | sítio | direito | guerra 27 , || das | em | incluindo | com | por | a | o | e | os | no 22 e || das | outras | as | da | a | de | o | defender | à | demais 4 português || no | . | se 4 é || o | unitário | presidido | representado 4 ou || a | de | suspensas === direito : 157 69 de || acesso | veto | sufrágio | oposição | exploração | acção | se 31 à || protecção | segurança | liberdade | informação | greve | livre 9 a || que | um | indemnização | escolher | tempos | especial | dispensa | dispor 9 , || nos | a | de | para | em | nas | nomeadamente 7 ao || trabalho | ensino | ambiente | planeamento ... =head1 AUTHOR J.Joao Almeida, jj@di.uminho.pt =head1 SEE ALSO perl(1). =cut