Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw

Re^3: handling files using regular expression

by hdb (Monsignor)
on Jun 28, 2013 at 13:54 UTC ( #1041259=note: print w/replies, xml ) Need Help??

in reply to Re^2: handling files using regular expression
in thread handling files using regular expression

Just a few comments:

  • Your first while loop already runs through the whole file while not doing anything useful. Therefore the second while loop has nothing to do. Remove the first while loop altogether.
  • The statement while (<FILE>) of your second loop (now the only one...) will read a line at a time and assign it to $_. So you need to work with $_ within the loop block.
  • Your line $start =~ m/:(\d+)/; is applying the regex to the variable $start but you need to apply it to $_. Sou you might say $_ =~  m/:(\d+)/; which would work. It would be more Perlish to just say /:(\d+)/; as this would be applied to $_ by default.
  • The result of this match is that what was found in (...) is assigned to $1 so you need to write that to your file: print OFILE "$1\n";.
This is probably not all but if you re-read the earlier thread you should find more best practices.

Replies are listed 'Best First'.
Re^4: handling files using regular expression
by rocketperl (Sexton) on Jun 28, 2013 at 15:24 UTC
    Thank you so much. The code worked like a charm.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1041259]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others wandering the Monastery: (5)
As of 2018-06-24 02:17 GMT
Find Nodes?
    Voting Booth?
    Should cpanminus be part of the standard Perl release?

    Results (126 votes). Check out past polls.