use Date::Calc qw( check_date ); while ( ) { chomp; my @date = ( /(\d+)/g )[2,0,1]; print and print check_date(@date) ? "-->Yep\n" : "-->Nope\n"; } __END__ 1.1.1 6/4/1989 2-29-2000 2/29/2001