while ($output =~ m/...re.../sg) {
... process block ...
}
####
$re = qr{AMQ8409.*?QUEUE\((.*?)\).*?RQMNAME\((.*?)\).*?RNAME\((.*?)\).*?end};
####
while ($output =~ m/(AMQ8409.*?end)/gs) {
my $block = $1;
my %hash;
while ($block =~ m{(\w+)\((.*?)\)}g) {
$hash{$1} = $2;
}
# process block
# use $hash{QUEUE}, $hash{RQMNAME}, $hash{RNAME}, etc.
}
####
my %hash;
while (<>) {
if (m/^AMQ8904/) { # start of block found
%hash = ();
} elsif (m/end/) { # end of block found
... process block ...
} else {
$hash{QUEUE} = $1 if m/QUEUE\((.*)\)/;
$hash{RNAME} = $1 if m/RNAME\((.*)\)/;
# ... add more variables of interest ...
}
}