First, you never specify in your code against what you're matching, and you never give a value to $_ (the variable against which matching is done by default). I can't fathom what the line giving the error is trying to do (matching against any of the variables in the snippet woulnd't make sense), so we don't know how to fix this.

Second, my $fields = (); is the same as my $fields = undef;, and in the regular expression, you're refering to this variable instead of the first element of @fields as you probably intended. If you want to match what's in the first element of @fields, try: s/$fields[0]/$user/. Of course, that should probably really be: s/\Q$fields[0]\E/$user/ since @fields holds simple strings, not regexps.


In reply to Re: uninitialized value in substitution by ikegami
in thread uninitialized value in substitution by xjlittle

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • 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:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, 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, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.