use Lingua::EN::Numbers qw(num2en); while () { s/(\d+)/num2en $1/eg; print; } __DATA__ Too Small: 7 and 5. Too Big: 123345 Just right: 51 #### use Date::Parse qw(strptime); use POSIX qw(strftime); my $str = 'Oct 27, 2011'; my $newdate = strftime "%Y/%m/%d", strptime $str; print "$newdate\n";