my @files = qw( one.zip twotwo.doc three3.ppt ); my (@only_names, @only_ext); for (@files) { my ($name, $ext) = $_ =~ m!\A(.*)\.([^.]+)\z!s; push( @only_names, $name ); push( @only_ext, $ext ); }