you need to do two things. 1. create a submatch for the data you want and 2. evaluate the regexp in list context to get the result. Try:
my ($map) = $traps{$trap}{oid} =~ /\.(\d+)$/;
-pete
"Worry is like a rocking chair. It gives you something to do, but it doesn't get you anywhere."