use strict; use warnings; use Data::Dumper; use CGI qw(param); my %user = map {$_ => param($_)} grep /^user_/, param(); print Dumper \%user; #### ./foo.pl "user_foo=bar&user_bar=baz&something=else"