#!/usr/bin/perlusev5.24;usestrict;usewarnings;useCarp;# Challenge says only letters and spaces, but this won't be pickysub reverse_over_4{my$string=shiftorcroak"Error: missing argument to function.";my$res=join"",map{(length($_)>4)?scalarreverse($_):$_}split/ /,$string;return$res;}print"Enter string: ";my$input=<STDIN>;chomp$input;sayreverse_over_4($input);
Perl one-liner:
A bit more cleaned up, taking user input:
See runnable demo on PerlBanjo
Note that
($_)
is not needed forlength
andreverse
.Yeah, true, that's just my personal preference 🙂