##
my %matches;
$matches{name} = [ grep { $names[$_] =~/$pattern/ } 0 ..$#names ];
$matches{desc} = [ grep { $desc[$_] =~/$pattern/} 0.. $#desc];
####
my @matches = grep { $names[$_] =~ /$pattern/ ||
$desc[$_] =~/$pattern/ }
0 .. $#names;