I noticed you used the s modifier in your match and that you seem to be trying to match across the whole file.
This example might not be the most efficient way but is a start.
use warnings;
use strict;
my @terms = qw( Maple Oak walnut pine juniper );
my $text;
{
#slurp the whole file
local $/;
$text = <DATA>;
}
if ( $text =~ /upperboundary(.+)lowerboundary/s ) {
$text = $1;
print $text, "\n\n";
}
else {
die "no match";
}
foreach my $term (@terms) {
if ( $text =~ /($term)/is ) {
print "$1\n";
}
}
__DATA__
upperboundary
The book Hiking the Red, A Complete Trail Guide To Kentucky's Red Rive
+r Gorge
made it a point to describe the habitat and the diverse species of tre
+es that
one is likely to encounter at the Red. According to the authors, the s
+pecies
of trees found in the Daniel Boone National Forest includes beech, sug
+ar
maples, white pines, hemlock, several types of oak, and hickory. These
+ trees
provide habitat for an estimated 67 different species of reptiles and
amphibians, 46 species of mammals, and 100 species of birds.
lowerboundary
Edit: The text is from http://www.redrivergorge.com/dbnf.html.
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|