#! /usr/bin/perl use strict ; use warnings ; $|++ ; use Date::Calc qw( Calendar ) ; use Data::Dumper ; my $cal = Calendar( 2002, 8 ) ; my @arr = map { [ split ] } grep { /^[\d\s]+$/ } split /\n/, $cal ; unshift @{$arr[ 0]}, undef until @{$arr[ 0]} == 7 ; push @{$arr[-1]}, undef until @{$arr[-1]} == 7 ; print Dumper( \@arr ) ; __END__