I'll do this in two steps. First I'll check that the date is indeed eight digits, then I'll check if it refers to a valid date with the Date::Manip module (so this will fail with historical dates using the Julian calendar).
Output:perl -we 'use Date::Manip; sub valid_yyyymmdd { $_[0] =~ /^(\d{8})$/ a +nd ParseDate($1) and 1; } valid_yyyymmdd($_) and print "$_\n" for qw" +20060630 20060631 20060730 20060731 20060732 2006.07.30 06.07.31";'
20060630 20060730 20060731
In reply to Re: checking for valid date
by ambrus
in thread checking for valid date
by alandev
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |