Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

Re: array within an array

by aartist (Scribe)
on Oct 07, 2011 at 14:40 UTC ( #930196=note: print w/ replies, xml ) Need Help??


in reply to array within an array

You need to define 'charges' properly. Do you mean to say?

@charges = ( [qw/ch1 ch2 ch3 ch4 ch5 ch6 ch7 ch8/], [qw/ch1 ch2 ch3 ch4 ch5/], [qw/ch1 ch2 ch6 ch7/], [qw/ch4/], [qw/ch3 ch9/], [qw/ch2 ch4/], )
I am inclined to provide this as you said in other comment that last ch4 should not be replaced with 'chx'.


Comment on Re: array within an array
Download Code
Re^2: array within an array
by cesear (Novice) on Oct 07, 2011 at 15:18 UTC
    no @charges is just one long list. I am trying to simulate a groups of actually charges for one account, using this trivial example.

    ch3 ch4 ch6 as a 'group' are replaced as 'chx' in list(array) in @charges.

      I think this does what you want:

      use warnings; use strict; my @charges = qw/ch1 ch2 ch3 ch4 ch5 ch6 ch7 ch8 ch1 ch2 ch3 ch4 ch5 ch1 ch2 ch6 ch7 ch4 ch3 ch9 ch2 ch4/; my %bundle1 = map { $_ => 0 } qw(ch3 ch4 ch6); my %b = %bundle1; my @final; my @del; for (@charges) { if (exists $bundle1{$_}) { delete $b{$_}; if (!keys %b) { # seen them all, so reset %b = %bundle1; @del = (); push@final,'chx'; } else { # keep it, in case not all are seen push@del,$_; } } else { push@final,$_; } } push@final,@del; # add back any remainders print "@final\n"; __OUTPUT__ ch1 ch2 ch5 chx ch7 ch8 ch1 ch2 ch5 ch1 ch2 chx ch7 ch9 ch2 ch4 ch3 ch +4

      One possible problem: it will slightly alter the order of your list if a partial bundle is seen.

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others taking refuge in the Monastery: (8)
As of 2014-08-27 23:34 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The best computer themed movie is:











    Results (253 votes), past polls