Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?
 
PerlMonks  

Re^2: How to sort the data in Array which has format MMYY

by Anonymous Monk
on Jul 02, 2013 at 15:04 UTC ( #1042041=note: print w/replies, xml ) Need Help??


in reply to Re: How to sort the data in Array which has format MMYY
in thread How to sort the data in Array which has format MMYY

Maybe when replying to somebody who already says is new to perl, it would be nice to actually test your code.

Problems:

1) don't pass $a and $b to a sort sub, since they are special variables

2) don't treat a hash like a hashref, it just won't work

3) you don't need the return either

This does work:
use strict; use warnings; my %month_sort = ( 'JAN' => 1, 'FEB' => 2, 'MAR' => 3, 'APR' => 4, 'MAY' => 5, 'JUN' => 6, 'JUL' => 7, 'AUG' => 8, 'SEP' => 9, 'OCT' => 10, 'NOV' => 11, 'DEC' => 12 ); sub sort_cmp { ( substr($a, 3, 2) cmp substr($b, 3, 2) ) || ( $month_sort{substr($a, 0, 3)} <=> $month_sort{substr($b, 0, 3)} ); } my (@months) = qw(APR12 MAR13 APR11 MAR12 FEB13 APR13); @months = ( sort sort_cmp @months); print "@months \n";

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1042041]
help
Chatterbox?
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (11)
As of 2017-07-26 09:23 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    I came, I saw, I ...
























    Results (387 votes). Check out past polls.