in reply to Convert Date formats

Using a hash to look up for the months, the values for the keys are the order of the months in the calendar while the keys are each month's name ...
#!/usr/local/bin/perl use strict; use warnings; my %monthsOrder; @monthsOrder{qw(Jan Feb Mar Apr May Jun Jul Aug Sept oct Nov Dec)}=1.. +12; #provide a list of dates to convert my @dates = ('Nov-07', 'Aug-09', 'Jul-01', 'Feb-02'); foreach my $element (@dates){ my ($month, $year)= $element=~/(\w+)-(\d+)/; print convertMonth($month, $year),"\n"; } sub convertMonth{ my ($month, $year) = @_; for my $key(keys %monthsOrder){ return "20$year/$monthsOrder{$key} " if $month eq $key; } }
Output:
2007/11 2009/8 2001/7 2002/2
Updated to account for passing an array of different dates..


Excellence is an Endeavor of Persistence. Chance Favors a Prepared Mind.