Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things

Re^2: Parsing a sentence with Regexp::Grammars

by blindluke (Hermit)
on Mar 11, 2016 at 18:09 UTC ( #1157474=note: print w/replies, xml ) Need Help??

in reply to Re: Parsing a sentence with Regexp::Grammars
in thread Parsing a sentence with Regexp::Grammars

You, sir, are a gentleman and a scholar.

This fine example of my stupidity will rank highly among its countless peers.


Just in case someone gets here looking for a working example, here it is:

use v5.14; use Regexp::Grammars; my $sentence = "Show me the money"; my $grammar = qr{ <nocontext:> <Sentence> <rule: Sentence> <VerbGroup> <NounGroup> <rule: VerbGroup> <Verb> <VPostfix>? <rule: Verb> <.Word> <rule: NounGroup> <NPrefix>? <Noun> <rule: Noun> <.Word> <rule: VPostfix> me | us | them <rule: NPrefix> a | an | the | some <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);

The result looks like this:

The sentence is: Show me the money $VAR1 = { 'Sentence' => { 'NounGroup' => { 'NPrefix' => 'the', 'Noun' => 'money' }, 'VerbGroup' => { 'Verb' => 'Show', 'VPostfix' => 'me' } } };

- Luke

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1157474]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (3)
As of 2022-07-04 00:22 GMT
Find Nodes?
    Voting Booth?

    No recent polls found