my %opt = ( 'reg_ll_ul_pc_zp' => { REG1 => [0, 100, 100, 0], REG2 => [0, 100, 100, 0], REG3 => [0, 100, 100, 0], REG4 => [0, 100, 100, 0], REG5 => [0, 100, 100, 0], REG6 => [0, 100, 100, 0], }, ); my @opt_array = qw( reg_ll_ul_pc_zp=s???? ( :( ) ); GetOptions(\%opt, @opt_array);