use strict; use warnings; my @array1 = qw/ cups-1.5.2-9.fc16.x86_64 cups-libs-1.5.2-9.fc16.x86_64 cups-1.5.2-9.fc16.x86_64/; my @array2 = qw/ cups-libs-1.5.2-9.fc16.x86_64 cups-libs-1.5.2-9.fc16.x86_64 /; my $pattern = "cups"; print "Array1:\n", join "\n", grep { /^$pattern\-\d/ } @array1; print "\nArray2:\n", join "\n", grep { /^$pattern\-\d/ } @array2;