#!/usr/bin/perl use strict; use warnings; my $max_len = 6; for my $i ( " ab ", " ab ", " abc ", " abcd ", " abcde ", " abcdef ", " abcdefg " ) { my $o = $i; while (length $o > $max_len and $o =~ s/\s$//){} while (length $o > $max_len and $o =~ s/^\s//){} while (length $o > $max_len and $o =~ s/.$//){} printf "%-15s%s", qq("$i"), qq( => "$o"\n); }