grep and map can probably help. First, to get a subset of hash keys:
my @a_keys = grep {/a/} (keys %names);

Then to get their values:
my @a_values = map {$names{$_}} grep {/a/} (keys %names);

You could also get the job done using hash slices, like so:
my @a_values = @names{grep {/a/} keys %names};

That's more like the syntax you proposed, though I find it a bit disconcerting (maybe because I don't find the @names{...} hash-slice notation particularly natural in the first place).

        $perlmonks{seattlejohn} = 'John Clyman';

Update: only answered half the question in my original reply. Fixed here.

In reply to Re: Re: Re: text string approxiamtions (concept for review) by seattlejohn
in thread text string approxiamtions (concept for review) by shemp

Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":