my ($largest) = sort { length($b) <=> length($a) } $document =~ m!~\s*([^~]+?)\s*~!g; #### my ($largest) = sort { length($b) <=> length($a) } split(/~/, $document);