Hi All,
I am kinda stuck creating a DateTime parser.
The dates I am trying to parse are:
06/26/98
06-26-98
Jun 26 1998
Jun 26 98
I have the first two done and working but the third and forth is giving
me fits :(
Here is what I have tried;
I created a new package like so,
package DateTime::Format::UGAnswer;
use DateTime;
use DateTime::Format::Builder
(
parsers => {
parse_date =>
[ {
length => 8,
strptime => '%m-%d-%y',
},
{
length => 8,
strptime =>'%m/%d/%y',
},
{
length => 10,
strptime => '%m/%d/%Y',
},
{
length => 10,
strptime => '%m-%d-%Y',
},
{
length => 11,
strptime => '%B%N%d%N%Y',
},
],
},
);
sub format_date
{
my ( $self, $dt ) = @_;
return $dt->ymd('-');
}
1;
and my test script looks like this:
use strict;
use warnings;
use lib qw(f:/scripts);
use DateTime;
use DateTime::Format::UGAnswer;
my $dt = DateTime::Format::UGAnswer->parse_date('Jan 26 2001');
print $dt->mdy;
I have tried messing with this line in the package
strptime => '%B%N%d%N%Y' in order to get it to work but nogo
the error is
F:\scripts>y.pl
Invalid date format: Jan 26 2001 at F: .....
Can someone provide insite as to what I am doing wrong?
Thanks
Ron Hill