[Cascavel-pm] Como obrigar uma regex a parar e um determinado local durante a avaliação?

Nilson Santos Figueiredo Junior acid06 em gmail.com
Quinta Junho 1 07:14:13 PDT 2006


On 6/1/06, Eden Cardim <edencardim em gmail.com> wrote:
> Eu ainda queria saber (por curiosidade) se existe alguma forma que me
> permita instruir ao o mecanismo de reconhecimento de regex quando
> parar de consumir os caracteres da string e aceitar ou não a substring
> consumida até o momento, algo como:
> /((.)(?{$x++ if $2 eq 'X'; accept if $x > 10 }))+/
> mesmo sabendo que isso não resolve o meu problema.

Ao menos "aceitar ou não a substring consumida até o momento" eu sei
que tem jeito, dê uma olhada na seção "Extended patterns" da manpage
perlre. Em particular, leia as formas que estão marcadas como
"experimentais" (elas estão marcadas assim já fazem alguns anos e é
seguro utilizá-las). Mas agora eu realmente não tenho como quebrar a
cabeça e tentar fazê-la para te mostrar um exemplo.

Talvez, se você perguntar no PerlMonks eles possam te dar uma resposta
mostrando como se faz, não sei.

-Nilson Santos F. Jr.


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