use DateTime; use strict; use warnings; my $str = "2004-01-14"; my( $y, $m, $d ) = split /\D/,$str; my $delta = DateTime->new( year => $y, month => $m, day => $d, )->delta_days( DateTime->now(), ); die $delta->days; __END__ 0 at datetime4.pl line 16.