[SP-pm] Problema com substituição
Roberto Maluhy Junior
maluhy em gmail.com
Quinta Agosto 3 15:23:44 PDT 2006
Olá Senhores!
Tenho um problema com os $1, $2, ....
Em vez de, por exemplo, fazer uma substituição como
-----
$_ = "O gado roeu a roupa do rei de roma";
$correto = "gato";
s/^(.*?)(gado)(.*?)$/$1$correto$3/g;
-----
Gostaria de fazer algo como:
-----
$_ = "O gado roeu a roupa do rei de roma";
$correto = "gato";
$match = '^(.*?)(gado)(.*?)$';
$subs = '$1' . $correto . '$2';
s/$match/$subs/g;
-----
O resultado deste ultimo caso eh
"$1gato$2"
Sei que neste exemplo nao preciso dos $1 e $2 etc...mas faz de conta
que sejam necessarios. A ideia eh ler o $match e o $subs de um arquivo
de configuracao, sem precisar modificar o arquivo principal toda vez
que quiser fazer uma substituicao diferente.
Como posso fazer os $1 $2 ... que estao num scalar ($subs neste caso)
serem considerados como variaveis e nao como strings na regexp??
Obrigado desde já!
Roberto
--
Roberto Maluhy Jr
IFUSP -- Instituto de Física
Universidade de São Paulo, Brasil
Mais detalhes sobre a lista de discussão SaoPaulo-pm