%hash = ('"', '"', '/*', '*/', '<-', '->'); foreach (keys(%hash)) { $start = $_; $end = $hash{$_}; my $inside = 0; my $oldpos = 0; while ($string =~ /(?## while($db->FetchRow()) { undef %mult; %mult = $db->DataHash(); push (@multy, values(%mult)); } %hash = reverse(@multy);