Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re^4: Search and Copy

by kennethk (Abbot)
on Nov 23, 2012 at 17:47 UTC ( #1005308=note: print w/ replies, xml ) Need Help??


in reply to Re^3: Search and Copy
in thread Search and Copy

Again, please use <code> tags and read How do I post a question effectively?

I have found strict to be very helpful to identifying and avoiding bugs in my code -- see Use strict warnings and diagnostics or die. If I were going to write your posted code, it might look more like:

use strict; use warnings; open (my $out, ">", "Results.txt") or die ("Could not open file Result +s.txt; $!"); open (my $in, "<", "Textfile.txt") or die ("Can not open input file: $ +!"); local $/; while (<$in>) { if (/(web site.{250})/i) { print $out $1; } }

Changes that I made include:

  1. I swapped to lexical file handles and 3 argument open, which are considered better practice for a number of reasons. See perlopentut. In particular, this gives strict more power to help and removes the need for explicit close.
  2. I corrected inconsistency between your file name and error message; file names are generally case sensitive.
  3. I swapped to slurp mode using $/. Given the large number of characters you are interested in, it is unlikely they will all fall on the same line.
  4. Your while(<>) loop read data into $_ not $ARG, so I corrected that.
  5. I swapped your regular expression to the regular expression I posted above, with the addition of the s modifier. This makes it so . also matches new lines, and is essential when working in slurp mode.

You may consider going to http://learn.perl.org to gather some learning resources before trying to run too far.


#11929 First ask yourself `How would I do this without a computer?' Then have the computer do it the same way.


Comment on Re^4: Search and Copy
Select or Download Code

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1005308]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others studying the Monastery: (12)
As of 2015-07-30 17:07 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (273 votes), past polls