Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked
 
PerlMonks  

How do I print an array with commas separating each element?

( #30279=categorized question: print w/ replies, xml ) Need Help??
Contributed by Anonymous Monk on Aug 30, 2000 at 14:55 UTC
Q&A  > arrays


Answer: How do I print an array with commas separating each element?
contributed by Jouke

There is:

print join( ',', @array );
Answer: How do I print an array with commas separating each element?
contributed by ar0n

$, = ','; print @array;

$, is the output field separator: print will insert whatever string has been assigned to $, between all of its arguments.

Note that if you use this technique, you should make your assignment to $, temporary by doing

local $, = ',';

Answer: How do I print an array with commas separating each element?
contributed by OfficeLinebacker

Observe the difference in effects between $" and $,

$\ = "\n"; my @a = qw( One Two Three ); { local $, = ','; print @a; print "@a"; } { local $" = ','; print @a; print "@a"; }
Output:
One,Two,Three One Two Three OneTwoThree One,Two,Three

Answer: How do I print an array with commas separating each element?
contributed by Roy Johnson

$" can also be used for this:

local $" = ','; print "@arr\n";
Answer: How do I print an array with commas separating each element?
contributed by nite_man

And another way:

map { print $_ . ($_ == $array[$#array] ? '' : ', ' ) } @array;
Answer: How do I print an array with commas separating each element?
contributed by Coruscate

For completeness, here's a verbose solution:

my $x; my @a = qw(one two three); print "$a[$_-1], " while $x++ < $#a; print "$a[$#a]";
Answer: How do I print an array with commas separating each element?
contributed by turnstep

Here's another way:

my $x = 0; printf "$array[$x-1]%s", $x <= $#array ? "," : "\n" while $array[$x++];

It puts a newline instead of a comma after the last element.

Please (register and) log in if you wish to add an answer



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • 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, 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
  • Outside of code tags, you may need to use entities for some characters:
            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.
  • Log In?
    Username:
    Password:

    What's my password?
    Create A New User
    Chatterbox?
    and the web crawler heard nothing...

    How do I use this? | Other CB clients
    Other Users?
    Others exploiting the Monastery: (6)
    As of 2014-09-17 22:08 GMT
    Sections?
    Information?
    Find Nodes?
    Leftovers?
      Voting Booth?

      How do you remember the number of days in each month?











      Results (100 votes), past polls