. actually matches . for once (and it's taken me hours to get this)
#!perl -0
map{$T=$V=$w=$s='';$c=map{$V+=@v=/[aeiouy]/ig;$T+=@t=/\w/g;$w.=$_.=$".$"x(3-tr///c);y// /c;$s.=@v.'/'.@t|$_}/\S+/g;s/ *$/
/,$w=~s/(.{57}).{4,}/$1.../&&$s=~s/(.{56}\S*).*/$1/for$w,$s;$c&&print"$c: $w$V/$T: $s"}<>=~/[^.]*.?/g
|
sorry about that, couldn't paste the tabs from the terminal I was using.
#!perl -0
map{$T=$V=$w=$s='';$c=map{$V+=@v=/[aeiouy]/ig;$T+=@@=/\w/g;$w.=$_.=$".$"x(3-tr///c);y// /c;$s.=@v.'/'.@@|$_}/\S+/g;s/ *$/
/,$w=~s/(.{57}).{4,}/$1.../&&$s=~s/(.{56}\S*).*/$1/for$w,$s;print"$c: $w$V/$T: $s"if$c}<>=~/[^.]+\.?/g
|
failing that test did me some good, I hate to say. (s/\t/hard tabs/g, please Mr. Judge)
#!perl -0
map{$T=$V=$w=$s='';$c=map{$V+=@v=/[aeiouy]/ig;$T+=@@=/\w/g;$w.=$_.=$".$"x(3-tr///c);y// /c;$s.=@v.'/'.@@|$_}/\S+/g;s/ *$/
/,$w=~s/(.{57}).{4,}/$1.../&&$s=~s/(.{56})(\S+)?.*/$1$2/for$w,$s;print"$c:\t$w$V/$T:\t$s"if$c}<>=~/[^.]+\.?/g
|
can you change those \t's to hard tabs, please.
#!perl -0
map{$T=$V=$w=$s='';$c=map{$V+=@v=/[aeiouy]/ig;$T+=@@=/\w/g;$w.=$_.=$".$"x(3-tr///c);y// /c;$s.=$s!~/.{61}/&&@v.'/'.@@|$_}/\S+/g;s/ *$/
/for$w,$s;$w=~s/(?<=.{56})(.).{4,}/$1.../;$&=~$"&&$s=~s/ +\S+$//;print"$c:\t$w$V/$T:\t$s"if$c}<>=~/[^.]+\.?/g
|