[Cascavel-pm] Teste para "Perl Job Developer"

Solli Honorio shonorio em gmail.com
Terça Janeiro 2 06:24:38 PST 2007


>
> > Lí o perlre neste ponto e fiquei mais confuso ainda... primeiro sobre o
> > código "(?:SEEKING)?". De cara eu pensei que o "SEEKING" fosse uma
> palavra
> > reservada, mas pelo jeito não é. Esta palavra está aí para nada ? Ou
> está
> > apenas tentando dar um match nesta palavra, que não existe ?
>
> Sim, ele está tentando dar um match opcional na palavra SEEKING.
> A palavra precisa ser agrupada, pro quantificador ? operar sobre a
> palavra inteira.


Então eu posso ler o comando "s/(?:SEEKING)?/PERLqny~%|fsyx%~tz&/" da
seguinte maneira :
substitua o agrupamento SEEKING ou qualquer outra coisa da variável $_ para
PERLqny~%|fsyx%~tz&. Eu poderia alterar isto para "s//PERLqny~%|fsyx%~tz&/"
com o mesmo resultado, mas sem esta pseudo confusão, certo ?

O uso de (?:) é exatamente igual ao uso de ():
>
> <code>
> s/use\s+(Java|Python|PHP)/Perl/g;
> </code>
>
> Pode ser escrito assim:
>
> <code>
> s/use\s+(?:Java|Python|PHP)/Perl/g;
> </code>
>
> Isso se vc não fizer questão de saber quem foi substituido.
>
> Interessante, agora compreendi que neste caso não tenho as informações
extras fornecidas pelo regex. O cara simplesmente executa e segue em frente.

Obrigado novamente... mais uma para a minha evolução no Perl.

Solli M. Honório
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://mail.pm.org/pipermail/cascavel-pm/attachments/20070102/3cd35139/attachment.html 


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