PERL: NP genkender
Jeg forsøger at lave en NP (Noun Phrase) genkender, men er rendt i problemer.Programmet skal kunne 2 ting:
1. Sætte kanteparanteser uden om Nouns.
2. Sætte kanteparanteser uden om hele NP'en når denne består af flere konstituenter..
Spørgsmål ét har jeg klaret på denne måde:
my @pairs = split(' ',$inputtext);
foreach my $pair (@pairs) {
if ($pair =~ /(\w+)\/(\w+)/g)
{ if($2 eq "N") {print "["}; print "$1\/"; print $2; if($2 eq "N") {print "]"}; print "\n"}
};
Jeg har også allerede defineret nogle NPregler, men hvordan laver jeg selve parseren????
NP Rules:
NP --> N
NP --> PRON_UBST, NP
NP --> PRON-PERS
NP --> PRON-REC
NP --> EGEN
NP --> PRON_POSS, N
NP --> PRON_DEMO, N
NP --> PRON_UBST,PP
PP --> PRÆP, NP
NP --> EGEN_GEN, N, PP
NP --> ADJ, N