Note: it often helps you and us if you reduce your sample code to just demonstrate the bug. Most likely in the process you will solve the problem, but even if you don't you will understand it better. In either case you will remember the lesson better at the end of the day.
Your sample could have reduced to:
my $line = "This|that";
my @cols = split(/|/, $line);
T h i s | t h a t
where I expected:
I know what I mean. Why don't you? has a few other related tips that may help in the future.
Why no use strict by the way? Especially puzzling as there is a use warnings.
Note too that the 3 parameter open is much preferred over the two parameter open (see open) for lucidity and security.
if ($cols = $target1)
looks wrong! Do you really intend to assign $target1 to $cols? Note that the if is (effectively) testing the contents of $target1, not equality of $target1 and $cols.
DWIM is Perl's answer to Gödel
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:
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, 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, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.
| & || & |
| < || < |
| > || > |
| [ || [ |
| ] || ] ||