Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW

Re: Just Another Perl Article

by stefan k (Curate)
on Nov 02, 2001 at 15:06 UTC ( #122779=note: print w/replies, xml ) Need Help??

in reply to Just Another Perl Article

Hi :-),
this was a pretty cool read! I learned a lot from it. Thanks.

One question though: I don't really get this little piece of code:

$\ = $/; # ORS = IRS = "\n" $, = ":"; # OFS = "," while (<PASSWD>) { chomp; # removes $/ from $_ my @f = split $,; # splits $_ on occurrences of $, # fool around with @f print MOD @f; }
Why would it put a newline to the end of each line during the print? You say that "$\ goes where you put a \n in your print()" but you're chomp()ing the newlines.

What do I miss here?

Hmm, now looking at it I get even more questionmarks on my forehead:

  1. What's the point of assigning a colon to $, when split doesn't use it by default?
  2. Why do you have to assign $\ with $/? Aren't they supposed to have the same value anyway?
  3. Why don't we have an abbrev like <c> for the code-Tag, since it is really much to type *grin*?

Still, as I said above: good read!

Regards... Stefan
you begin bashing the string with a +42 regexp of confusion

ps: a typo in your article:

$ARGV this holds the input source currently begin read from
should probably be "being read from", er?

Replies are listed 'Best First'.
Re: Re: Just Another Perl Article
by davorg (Chancellor) on Nov 02, 2001 at 15:22 UTC
    • $/ is the input record separator. This is "\n" by default.
    • $\ is the output record separator. This is the empty string by default. Setting it to $/ means that you no longer need to put a "\n" on the end of each print statement.
    • $, is the string that is output between each element of the list passed to print. The default value is the empty string. By setting it to ":" we don't just control the split statement, but also the print statement. The elements of @f are printed separated by ":" characters.

    Does that help? You can get more info on special Perl variables like these in perlvar.


    "The first rule of Perl club is you don't talk about Perl club."

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://122779]
[shmem]: .oO( two left hands, full of thumbs )
[erix]: well-thumbed

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (7)
As of 2018-02-19 14:49 GMT
Find Nodes?
    Voting Booth?
    When it is dark outside I am happiest to see ...

    Results (265 votes). Check out past polls.