my @files = qw{ Date12_type.asp Date1_type.asp Date7_type.asp Date4_type.asp }; my @sorted_files = map { join '', @{$_} } sort { $a->[1] <=> $b->[1] } map { [(/([^\d]+)(\d+)(.*)/)] } @files; $,="\n"; print @sorted_files;