[Cascavel-pm] Regexp "greediness" (era: Quando *não* usar Perl?)

Fernando Oliveira fernandocorrea em gmail.com
Segunda Janeiro 29 08:36:54 PST 2007


ou, por padrão eles pegam o máximo... e qdo se usa o ?, passam a pegar
o minimo...

2007/1/29, Nelson Ferraz <nferraz em gmail.com>:
> Fernando Oliveira wrote:
> > Sorry... i dont speak english...
>
> Por isso estamos nos esforçando para traduzir a documentação de Perl:
>
> http://www.perl.org.br/bin/view/Perldoc/
>
> Com relação à expressão "greediness", concordo que não é uma palavra
> fácil. Vem do inglês "greed", "cobiça".
>
> Aplicada às expressões regulares, significa que os quantificadores são,
> por padrão, "cobiçosos" -- isto é, tentam capturar o máximo possível --
> a não ser que você use o ponto de interrogação, para torná-lo "não
> cobiçosos":
>
>         my $sentence = "xyzzy";
>
>         $sentence =~ /x(.*)y/;  # greedy
>         print "'$1'\n";         # retorna: 'yzz'
>
>         $sentence =~ /x(.*?)y/; # non-greedy
>         print "'$1'\n";         # retorna: ''
>
> []s
>
> Nelson
>
> --
> Nelson Corrêa de Toledo Ferraz
>
> Free Software Foundation Associate Member #3203
> Sociedade Perl do Brasil (www.perl.org.br)
> Rede Livre de Compartilhamento de Cultura Digital
> _______________________________________________
> Cascavel-pm mailing list
> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm
>


-- 
[]'s Fernando


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