in reply to Using keys from hashes

You cannot assign a new value to an existing key. Individual keys are immutable. They can be deleted or added, but not altered. The value they index, of course, may be altered.

Keys are indices. Think of an array; you cannot interpolate the index of an array into anything. Well, hashes use keys as their index, and there's no syntax for interpolating an index into a quotish construct. At best, you can use a wonky-work-around like this:

my %hash = ( one_key => 'value', two_key => 'value' ); my $interpolated = "@{[keys %hash]}"; my $interpolated_re = qr/@{[keys %hash]}/; print "Interpolated string: >>>$interpolated<<<\n"; print "Interpolated regexp: >>>$interpolated_re<<<\n";

Probably a better idea would be to present the problem you're trying to solve along with a minimal but working example of code you've tried, and then ask us how we might go about solving it.


Dave

Replies are listed 'Best First'.
Re^2: Using keys from hashes
by anek77713 (Acolyte) on Jul 18, 2013 at 06:59 UTC
    Thnx Dave!!! now I understand)