CODE: use Data::Dumper; open(FILE, @ARGV[0]) || die "can't open output file"; @test = ('a', qr/b/, 'c', 'd'); while ( ) { $hold[$i] = $_; chomp $hold[$i]; $i++; } print Dumper \@hold , \@test; OUTPUT: $VAR1 = [ 'a', 'qr/b/', 'c', 'd', 'e', '' ]; $VAR2 = [ 'a', qr/(?-xism:b)/, 'c', 'd' ];