say for map { clean($_) } split /\|/, $str; sub clean { ($_[0] =~ /\A\s*(.*?)\s*\z/)[0] }