Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot
 
PerlMonks  

Re^4: Hash assignments using map

by chargrill (Parson)
on Feb 24, 2007 at 16:47 UTC ( #601893=note: print w/ replies, xml ) Need Help??


in reply to Re^3: Hash assignments using map
in thread Hash assignments using map

first point is, you only have letters, no numbers, so Perl won't "increment" them

Really?

$ perl -le '$c = "a"; print ++$c' b

Check perlop:

The auto-increment operator has a little extra builtin magic to it. ... If, however, the variable has been used in only string contexts since it was set, and has a value that is not the empty string and matches the pattern "/^[a-zA-Z]*[0-9]*\z/", the increment is done as a string, preserving each character within its range, with carry ...

Update: Though you're actually right, but only by coincidence. Using the postfix autoincrement won't make the hash elements incremented.

$ perl -Mstrict -MData::Dumper -we 'my @a = qw(a b c d); \ my %h = map { $_++ } @a; print Dumper \%h' $VAR1 = { 'c' => 'd', 'a' => 'b' };


--chargrill
s**lil*; $*=join'',sort split q**; s;.*;grr; &&s+(.(.)).+$2$1+; $; = qq-$_-;s,.*,ahc,;$,.=chop for split q,,,reverse;print for($,,$;,$*,$/)


Comment on Re^4: Hash assignments using map
Select or Download Code
Re^5: Hash assignments using map
by mk. (Friar) on Feb 24, 2007 at 16:56 UTC
    my bad!
    it actually increments the elements of the array, but adds them unchanged to the hash.
    thanks for pointing that out, chargrill++! :)

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    *women.pm

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://601893]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others taking refuge in the Monastery: (8)
As of 2014-08-29 12:32 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The best computer themed movie is:











    Results (280 votes), past polls