use strict; use warnings; my $maxlen = 60; my $finalbuffer = undef; my $smstext = $ARGV[0]; if ($smstext=~s/^(.{0,$maxlen})(?:\s|$)//) { $finalbuffer.=$1; $finalbuffer.="\n".$1 if ($smstext=~s/^(.{0,$maxlen})//); } print $finalbuffer