http://www.perlmonks.org?node_id=564652


in reply to checking for valid date

for completeness, here's a Date::Calc solution:
use Date::Calc qw/check_date/; my @date = $yyyymmdd =~ /^(\d{4})(\d{2})(\d{2})$/; die "ERROR: bad date '$yyymmdd'" unless check_date(@date); printf "Valid (y,m,d)=(%d,%d,%d)\n", @date;