Wim,
You're not declaring $var1 or $var2 anywhere. Instead you're assigning 'val1' and
'val2' to elements in the hash %VarValue.
So something like...
$VarValue{$var1} = 'val1';
print "I like $VarValue{$var1}!";
will print out...
I like val1
To define $var1, do something like:
$var1 = 'cheese';
Now $var1 is 'cheese', and $VarValue{$var1} is the value of %VarValue with a key of
'cheese'.
My head hurts!
Tristan
p.s. What are you trying to do? I.e. what's that code for? It looks like a mighty
confusing way of doing anything. Replacing a hash key with it's hash value seems like
a bad idea to me.
You Wrote:
----------
Hello people from the mighty list,
I have a problem with substitutions...
In the piece of code, here below,
"display $var1, $var"' should be "display val1, val2";
I don't see why, but the if condition doesn't seems to work...
and if I remove the if condition, the replacement doesn't occur...
Does any of you know why?
$VarValue{$var1} = "val1";
$VarValue{$var2} = "val2"
$Cmd = "display $var1, $var2";
foreach $Tmp ( sort keys %VarValue ) {
if ( $Cmd =~ /$Tmp/ ) {
print "***** In command $Cmd, replace $Tmp by $VarValue{$Tmp}\n";
$Cmd =~ s/$Tmp/$VarValue{$Tmp}/g;
}
}
Thanx a lot!
Wim
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
_______________________________________________________
sent via the murky.net webmail hegemony
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]