use strict; use warnings; my $SYSPBUFF = <<__EOD__; run_type = dev, max_monitor_time = 0.25 verbosity_level = 2 batch = ( source = sample_document_collection_1 files = Confucius.docx dest = Enterprise:Department ) __EOD__ my ($top) = split(/\s*batch\s*=/,$SYSPBUFF,2); my %hash = $top =~ m/([\w\.]+)\s*=\s*([\w\.]+)/g; print "$_ => $hash{$_}\n" for (keys %hash); __END__ max_monitor_time => 0.25 verbosity_level => 2 run_type => dev