[Cascavel-pm] Quando usar Gramatica e quando usar Regexp? [Was: Artigo - Como Perl Salvou o Projeto Genoma]

Luis Motta Campos luismottacampos em yahoo.co.uk
Sexta Maio 25 00:40:38 PDT 2007


On May 24, 2007, at 7:35 PM, Nilson Santos Figueiredo Junior wrote:
> On 5/24/07, Wendel Scardua <wendelscardua em gmail.com> wrote:
>>  A string "a^n b^n" (que não é regular) não pode ser reconhecida  
>> com uma
>> regexp do Perl (a menos de trapaças envolvendo "use re 'eval'").
>
> $str =~ /a(?:n(?{$c++}))*b(??{'n' x $c})$/;
>
> Devem ter outros jeitos melhores ainda.
> Por esse tipo de coisa que regex de Perl é melhor que das outras  
> linguagens...

   Me desculpa, mas isto não qualifica como "regular". Esta expressão  
regular implementa um autômato de pilha.
   Mas é uma solução bem interessante para o problema, de qualquer  
forma.
   Alguém testou isso?

   Putamplexos!
--
Luis Motta Campos (a.k.a. Monsieur Champs) is a software engineer,
Perl fanatic evangelist, and amateur {cook, photographer}




Mais detalhes sobre a lista de discussão Cascavel-pm