[SP-pm] Ajuda expressão regular

Eden Cardim edencardim em gmail.com
Segunda Julho 31 08:44:27 PDT 2006


> > s/(?:Shelf|on|Slot)//g;
>
> Esta expressão acima com ?: é uma condição if?

Não, o ?: é um indicador instruindo para que o conteúdo dos parênteses
não seja capturado no caso de um match.
Se você quer executar código condicional dentro de uma expressão
regular use as construções (?{}) ou (??{}). Mais detalhes em perldoc
perlre. Apesar de existirem essas opções, na maior parte dos casos é
melhor usar código como o que o Nelson sugeriu.


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