use strict;
use warnings;
use Parse::RecDescent;
my $grammar = q {
start : character character character(s)
{print "Found: ", $item[1], $item[2], join "", @{$item[3]}, "\n"; }
character: /\w/
};
my $parser = Parse::RecDescent->new($grammar);
defined $parser->start("ABCD") or die "didn't match";
####
use strict;
use warnings;
use Parse::RecDescent;
my $grammar = q {
start : character character character(s)
{print "Found: ", $item[1], $item[2], join "", @{$item[3]}, "\n"; }
character: /\w/ {print "Character: $item[1]\n"}
};
my $parser = Parse::RecDescent->new($grammar);
defined $parser->start("ABCD") or die "didn't match";
####
Character: A
Character: B
Character: C
Character: D
Found: 1111