The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
# Compile it with:
# $ eyapp -TC twolexers2.eyp 
# Run it with:
# $ ./twolexers2.pm -t -i -c 'A A %% d3 c2'

%%
s:  first '%%' { $_[0]->YYLexer(\&Lexer2) } second
;

first:
    A first
  | A
;

second:
    A second
  | A
;

%%

sub Lexer2 {
    my($parser)=shift;

    print "In Lexer 2 \n";
    for (${$parser->YYInput}) {
        m/\G\s*/gc;
        m/\G(\w+)/gc    and return('A',$1);
        m/\G(.)/gcs and die "Error. Expected a word,Found $1\n";
    }
    return('', undef);
}