...although it still leaves the "Use of uninitialized value ..." problem, which i don't quite understand.
my confusion stemmed from my bemusement with an imagined connection between the (\n) expression in the split regex and the $1 capture variable in the join and the idea that $1 must contain a newline at that point.
then it occurred to me that the intervening grep regex would undefine all the capture variables and, since it had no capturing parentheses of its own, leave them that way.
but it goes beyond that. apparently, "capturing" parentheses in a split regex don't actually capture (at least not to the capture variables), so $1 was never defined at any point.
perl -wMstrict -e "my @ra = split /(c)/, 'abcde';
print '$1 ', defined $1 ? 'defined' : 'undefined', qq( @ra)"
$1 undefined ab c de
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|