Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling
 
PerlMonks  

Re^6: split every other value

by ysth (Canon)
on Aug 07, 2004 at 00:48 UTC ( [id://380794]=note: print w/replies, xml ) Need Help??


in reply to Re^5: split every other value
in thread split every other value

I added the foreach-push one before posting because the slice is probably too obscure for most people
Assuming you are talking about:
my (@even, @odd) = @field[ map { $_, $_ + @field / 2 } 0 .. ( @field / 2 ) - 1 ];
it's not just obscure, it doesn't work. @even will get assigned all the fields. You need something like:
my (@even, @odd); (@even[0..(@field/2)-1], @odd[0..(@field/2)-1]) =

Replies are listed 'Best First'.
Re^7: split every other value
by Aristotle (Chancellor) on Aug 07, 2004 at 01:05 UTC

    Yes, that's the one I was talking about, and yes, you are right. Trying to correct along another line that leads me to another nice solution:

    my @field = split /,/, $text; my @even = @field[ map $_ * 2, 0 .. ( @field / 2 ) - 1 ]; my @odd = @field[ map $_ * 2 + 1, 0 .. ( @field / 2 ) - 1 ];

    (Despite the two maps, it only iterates once — a half-iteration in each of them.)

    Makeshifts last the longest.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://380794]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others imbibing at the Monastery: (3)
As of 2024-04-24 04:26 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found