Here is some example code that depicts one way you can eliminate the if() statements. Put your regexes into an array, and loop over them all at once per line. The $i variable is simply there to show that all regexes are being searched, and performs no functional use.

#!/usr/bin/perl use warnings; use strict; my @regexes = qw(one two three); my $line = "this is thREE"; my $i = 1; for my $regex (@regexes){ if ($line =~ /$regex/i){ print "$i\n"; } $i++; }

Also, although just preference, I like to write my opens like the following. I feel it's cleaner. Note the use of $! in the die() statement; it explains *why* the file couldn't be opened. Also note the use of 'my'... you should be using this to define each variable. You'll have to do this when you implement use strict; as I stated in an earlier post.

open my $log_report, '>>', $log_file or die "Can't open the file $log_file: $!";

-stevieb


In reply to Re: Perl File Parsing - My Code Works, but it's Ugly! by stevieb
in thread Perl File Parsing - My Code Works, but it's Ugly! by Nico

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.