[Cascavel-pm] Módulo para utilizar "rules" em Perl5
Flavio S. Glock
fglock em gmail.com
Segunda Março 13 14:13:17 PST 2006
Publicado agora no CPAN:
use Pugs::Compiler::Rule;
my $rule = Pugs::Compiler::Rule->compile( '((.).).' );
my $match = $rule->match( 'abc' );
if ($match) { # true
print $match; # "abc"
print $match->from; # 0
print $match->to; # 3
print $match->[0]; # "ab"
print $match->[0][0]; # "a"
}
A principal diferença entre "rule" e expressões regulares é que a rule
retorna uma estrutura de dados mais útil.
Se estivesse utilizando regex, no exemplo acima você teria $1='ab', $2='a'.
O módulo é versão 0.01, e a implementação ainda é incompleta - quem
quiser colaborar, apareça no #perl6 (irc.freenode.org). A idéia é
implementar toda a especificação
(http://dev.perl.org/perl6/doc/design/syn/S05.html)
- Flavio S. Glock
Mais detalhes sobre a lista de discussão Cascavel-pm