<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>You could take the alternative route of turning the string into a file handle, using open on a reference to the string (an example is shown in perldoc -f open), and then having a single regular while loop over lines read from a file handle (whether from string or file), chomping and processing. This would likely be the most memory efficient, as you'd never need a second copy of the input in memory. Useful if you could be dealing with very large files.</div><div><br></div><div>I think this may be Perl 5.10. Perl 5.8 might use a separate module, IO::String, for the same purpose, if I remember right.&nbsp;</div><div><br></div><div>Just a thought - but I do love the way Perl allows you to work with a file handle backed by a string so easily.</div><div><br></div><div>All the best</div><div>Stuart</div><br><div><div>On 2010-06-30, at 9:35 AM, Fulko Hew wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><br><br><div class="gmail_quote">On Wed, Jun 30, 2010 at 12:31 PM,  <span dir="ltr">&lt;<a href="mailto:arocker@vex.net">arocker@vex.net</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

<div class="im">&gt;<br>
&gt; OK, let me give you the specific example...<br>
&gt; The array contains all of the lines of a file...<br>
&gt; The foreach is used to loop over then, and 'take action' upon them.<br>
&gt; But when I'm done I want all the empty lines stripped from the array<br>
&gt; ('just<br>
&gt; because!')<br>
&gt;<br>
</div>Does the process require the presence of the entire file in memory before<br>
the loop, and the shuffled-down file afterwards? Do you output the<br>
remaining lines?<br></blockquote><div><br>No, but I need to output the 'remaining' lines.<br><br>Also I forgot to mention, the reason the original data was in an array, was because<br>it came from one of two sources... slurping a file, or a 'received' string.<br>

So I thought I'd first normalize either dataset into the array I would then traverse.<br></div></div><br>
_______________________________________________<br>toronto-pm mailing list<br><a href="mailto:toronto-pm@pm.org">toronto-pm@pm.org</a><br>http://mail.pm.org/mailman/listinfo/toronto-pm<br></blockquote></div><br></body></html>