blindluke has asked for the wisdom of the Perl Monks concerning the following question:
Enlightened Monks!
I wanted to play around with Regexp::Grammars, but it seems even the basic stuff eludes me. Could someone tell me what I'm doing wrong?
#!/usr/bin/perl use v5.14; my $sentence = "Show me the money"; my $grammar = qr{ <nocontext:> <Sentence> <rule: Sentence> <VerbGroup> <NounGroup> <rule: VerbGroup> <Verb> | <Verb> me <rule: Verb> <Word> <rule: NounGroup> <Noun> | a <Noun> | the <Noun> <rule: Noun> <Word> <rule: Word> \w+ }x; sub parse { my $s = shift; say "The sentence is: $s"; if ($s =~ $grammar) { use Data::Dumper; print Dumper %/; } else { say "I did not understand you." } } parse ($sentence);
I was expecting a data structure from which I could get $verb and $noun, but what I get instead is:
The sentence is: Show me the money I did not understand you.
- Luke
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: Parsing a sentence with Regexp::Grammars
by Paladin (Vicar) on Mar 11, 2016 at 17:54 UTC | |
by blindluke (Hermit) on Mar 11, 2016 at 18:09 UTC |
Back to
Seekers of Perl Wisdom