in reply to Perl Parsing Based on Supplied Precedence
A simple tweak of the precedence regex:$ perl parser.pl 16/4*2 { '/' => [ '16', { '*' => [ '4', '2' ] } ] }
Will produce a better output:my $precedence=[qr/(?:&&|\|\|)/,qr/(?:\+|-)/,qr/(?:\/|\*)/];
Edit: a further reading at perlop show me that '&&' precedes over '||', so regex should be:{ '*' => [ { '/' => [ '16', '4' ] }, '2' ] }
my $precedence=[qr/(?:\/|\*)/,qr/(?:\+|-)/,qr/&&/,qr/|\|\|/];
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: Perl Parsing Based on Supplied Precedence
by protist (Monk) on Nov 07, 2012 at 03:33 UTC | |
by wirito (Acolyte) on Nov 07, 2012 at 10:52 UTC | |
by roboticus (Chancellor) on Nov 07, 2012 at 16:23 UTC | |
by wirito (Acolyte) on Nov 07, 2012 at 16:42 UTC | |
by protist (Monk) on Nov 07, 2012 at 11:55 UTC | |
by wirito (Acolyte) on Nov 07, 2012 at 09:06 UTC | |
by protist (Monk) on Nov 07, 2012 at 11:49 UTC | |
by wirito (Acolyte) on Nov 07, 2012 at 12:01 UTC | |
by protist (Monk) on Nov 07, 2012 at 12:09 UTC |