When are people going to learn about the <code> notation?

As best as I can tell, here is what it says:

$dir = 'C:/texts/'; opendir(directory, $dir) or die "cant"; while($file=readdir directory) { next if $file =~ /^\./; $rfname = $dir.$file; # print "Found file: '$rfname'\n"; open (CONT, $rfname); while (<CONT>) { if ( $_ =~ m/[0-3]?[0-9(th)?(st)?(nd)?(rd)?]\s+(Jan(uary)?|Feb +(ruary)?|Mar(ch)?|Apr(il)?|May|Jun(e)?|Jul(y)?|Aug(ust)?|Sep(tember)? +|Oct(ober)?|Nov(ember)?|Dec(ember)?)\s+[0-9]?[0-9]?[0-9][0-9]/ig ) { print "$file\t $_\n"; } elsif ( $_ =~ m/(Jan(uary)?|Feb(ruary)?|Mar(ch)?|Apr(il)?|May| +Jun(e)?|Jul(y)?|Aug(ust)?|Sep(tember)?|Oct(ober)?|Nov(ember)?|Dec(emb +er)?)\s+[1-3]?[0-9](th)?(nd)?(st)?(rd)?\s+[0-9]?[0-9]?[0-9][0-9]/ig ) { print "$file\t $_\n"; } } }

Looking at your code, and another response, I see your problem. You are telling it to print the entire string.

If you have Learning Perl, by our own merlyn, look at 7.3.2.3, "Parentheses as memory".

Also, from Programming Perl:

A regular expression in parentheses, (...), matches whatever the regular expression (represented by ...) matches according to Rule 2. Parentheses therefore serve as a grouping operator for quantification. Parentheses also have the side effect of remembering the matched substring for later use in a backreference (to be discussed later). This side effect can be suppressed by using (?:...) instead, which has only the grouping semantics - it doesn't store anything in $1, $2, and so on.

Look into spending $60 for the Perl CD Bookshelf. It rocks.

J. J. Horner
Linux, Perl, Apache, Stronghold, Unix
jhorner@knoxlug.org http://www.knoxlug.org/

In reply to RE: Problem extracting date with regex by jjhorner
in thread Problem extracting date with regex by Anonymous Monk

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.