use warnings; @vol = ( "vol1", "vol2" ); $contextID = 9; $datastream = "this is just a data stream test"; ( $a, $b, $c, $d, $e, $f, $g ) = split /[\s]+/, $datastream; push @{'test-' . $contextID . '-' . $vol[0]}, $a; push @{'test-' . $contextID . '-' . $vol[0]}, $b; print "output0: @{'test-' . $contextID . '-' . $vol[0]}\n"; push @{'test-' . $contextID . '-' . $vol[1]}, $a; print "output1: @{'test-' . $contextID . '-' . $vol[1]}\n"; #### output0: this is output1: this