use strict; use warnings; for my $name (qw'JoeZZZJones JoeZZZJosephZZZJones Bobbie') { my @parts = split 'ZZZ', $name; print "Name: $name\n"; print "Name part $_: $parts[$_ - 1]\n" for 1 .. @parts; print "\n"; }