#!/usr/bin/perl use strict; #undef $/; my ($l,$pt,$br,$novas); print "PT :: BR :: Acordo1990 :: pref-PT :: pref-BR :: Obs\n"; while(<>){ next unless /\S/; my($ti,@nova,%novapt,%novabr,@pt,@br,@rpt,@rbr,@ob); chomp; ($l,$pt,$br,$novas,@ob)=split(/\s*::\s*/,$_); @nova = split(/\s*,\s*/,$novas); @novapt{@nova}=@nova; @novabr{@nova}=@nova; @pt = split(/\s*,\s*/,$pt); @br = split(/\s*,\s*/,$br); for(@ob){ if(/(\S+)\s+nPT/){ delete $novapt{$1}; push(@rpt,$1)} if(/(\S+)\s+nBR/){ delete $novabr{$1}; push(@rbr,$1)} if(/==/){$ti=1;} } next if $ti; print join(", ",@pt), " :: ", join(", ",@br), " :: ", join(", ",@nova), " :: ", join(",",keys %novapt), " :: ", join(",",keys %novabr), " :: ", join(", ",@ob), "\n"; }