foreach my $filename (sort keys %mycorpus) {
my $titles = '';
my $counter = 0;
while ($mycorpus{$filename} =~ /title:#(.*?)#\s*$/gm){
if($counter++){
last if $counter++; # skip the rest of the matches
# can also be used to print warnings about multiple titles
# and check $1 against $titles if they are the same, or not
}else{
$titles = $1; # first match, we can store it,
print "$titles \n"; # or print it out
}
}
}
####
this is text I want 1
this is text I want 2
this is text I want 3
##
##
foreach my $filename (sort keys %mycorpus) {
my $titles = '';
if ($mycorpus{$filename} =~ /title:#(.*?)#\s*$/m){
$titles = $1;
print "$titles \n";
}
}