Re: [Cascavel-pm] Trocar código por conteudo que está dentro de uma "sub".

Luis Campos de Carvalho lechamps em terra.com.br
Domingo Maio 16 20:15:36 CDT 2004


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

> ----- Original Message ----- 
> From: "Nelson Ferraz" <nferraz em phperl.com>
> Sent: Sunday, May 16, 2004 7:38 PM
> > João Gabriel wrote:
> > 
> > > foreach $linha (@arq) {
> > > $linha =~ s/[title]/&codtitle/ig;
> > > }
> > 
> > Em primeiro lugar, acho que você precisa escapar os colchetes,
para que 
> > eles não sejam interpretados como caracteres especiais:
> > 
> > $linha =~ s/\[title\]/&codtitle/ig;
> > 
> > Quanto à segunda parte da substituição... você tem certeza de que

> > precisa chamar uma sub de dentro da expressão regular?
> > 
> > Se você não tiver outra opção, existe uma maneira de se fazer
isso: você 
> > precisa indicar claramente o que código a ser executado, assim:
> > 
> > (?{ ... })
> > 
> > Mas eu recomendo buscar alternativas.
> > 

  Mandou bem, Nélson.
  Lembrando que, a pesar de os delimitadores serem diferentes, este
tipo de problema NÃO DEVE ser resolvido com expressões regulares.
Você está tentando executar parsing de uma estrutura de dados
semelhante a XML usando expressões regulares. Use as bibliotecas
XML::* para isso, você vai se dar melhor e vai fazer muito menos
força. 

  Putamplexos!
- -- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Luis Campos de Carvalho
Computer Scientist
Unix Sys Adm & OCP/DBA Oracle
http://br.geocities.com/monsieur_champs/
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (MingW32) - WinPT 0.7.96rc1

iD8DBQFAqBItz+iwwpKRaDIRAtYpAKCpAN8gzlKWUoHvIqbH/22whPWlugCg4LLI
PwfkwrLP60byd4VDWAFLu0E=
=lqH3
-----END PGP SIGNATURE-----




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