$DATA{"VOICE_DIGIT"} = "BASIC_testcase.txt"; #### #!/usr/bin/perl use strict; use warnings; use Data::Dumper; open(INFH, "<", "a.ini") or die $!; my %INI; my $HEADER = "_"; while(){ chomp; s/\s*#.*//; s/^\s+//; s/\s+$//; next unless $_; if(/^\[(\S+)\]$/){ $HEADER = uc($1); next; } $INI{$HEADER} = $_; } close(INFH); print Dumper(\%INI); #### $VAR1 = { 'Voice_Digit' => 'BASIC_testcase.txt' };