反復指定子の第二引数
#!/usr/bin/env perl use strict; use Parse::RecDescent; use Data::Dumper; my $grammar = q{ inputs : input(s /;/) { print Data::Dumper::Dumper($item[1]); } input : 'a' 'b' { [@item[1,2]]; } }; my $parse = new Parse::RecDescent ($grammar); while (<>) { defined $parse->inputs($_) or print "Bad text!\n"; }
で、
ab $VAR1 = [ [ 'a', 'b' ] ]; abab $VAR1 = [ [ 'a', 'b' ] ]; ab;ab $VAR1 = [ [ 'a', 'b' ], [ 'a', 'b' ] ]; ab;ab;ab $VAR1 = [ [ 'a', 'b' ], [ 'a', 'b' ], [ 'a', 'b' ] ];