Can't you do the upper case thing when you first create it?
On Friday 12 November 2004 03:07 pm, Randy W. Sims wrote: > Octavian Rasnita wrote: > > Hi all, > > > > Please tell me how to convert the elements of a hash to uppercase, if I > > can access that hash only by reference. > > > > For example, I have something like: > > > > my $ref = { 'a' => 'aaa', 'b' => 'bbb', 'c' => 'ccc' }; > > > > And I want to make 'a' to be 'A', 'b' to be 'B' and so on, but the values > > of the hash need to remain the same. > > > > I have tried using map() but without success. > > You can't modify the key; you can only create a new one and remove the > old one: > > #!/usr/bin/perl; > > use strict; > use warnings; > > my $ref = { 'a' => 'aaa', 'b' => 'bbb', 'c' => 'ccc' }; > > while ( my($k,$v) = each %$ref ) { > $ref->{uc($k)} = delete( $ref->{$k} ); > } > > use Data::Dumper; > print Dumper( $ref ); > > __END__ -- Eric Walker -- <br> CAD Engineer <br> X82573 <br> -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>