Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

Access elements in the nested array

by k_manimuthu (Monk)
on May 26, 2011 at 08:43 UTC ( #906770=perlquestion: print w/replies, xml ) Need Help??
k_manimuthu has asked for the wisdom of the Perl Monks concerning the following question:

Hi monks,

I have a two ini files, I need to read the INI1 certain values and place the values INI2. I am troubling to access the nested array elements. Please suggest how to access the elements in below nested array.

Thanks,
Mani Muthu

my @myfiles = ( ['INI_1','INI_2', ['VALUE_1'], ['VALUE_2'], ['VALUE_3'] ], ['INI_3','INI_4', ['VALUE_1'], ['VALUE_2'], ['VALUE_3'] ] ); foreach my $ini (@myfiles) { print "\n", $ini->[0]; ## Access Next level values print "\n", $ini->[1]; ## place the $ini->[0] values to $ini->[1] }

Replies are listed 'Best First'.
Re: Access elements in the nested array
by Nikhil Jain (Monk) on May 26, 2011 at 09:09 UTC

    It would be nice if you use modules like Config::Tiny , Config::IniFiles , Config::INI::Reader for reading ini files.

    I am troubling to access the nested array elements,

    try something like,

    use strict; use warnings; my @myfiles = ( ['INI_1','INI_2', ['VALUE_1'], ['VALUE_2'], ['VALUE_3'] ], ['INI_3','INI_4', ['VALUE_1'], ['VALUE_2'], ['VALUE_3'] ] ); foreach my $ini (@myfiles) { foreach my $nested_level (@{$ini}){ if(ref($nested_level) eq 'ARRAY'){ my @values = @{$nested_level}; print"@values\n"; }else{ print"$nested_level\n"; } } }
    Output: INI_1 INI_2 VALUE_1 VALUE_2 VALUE_3 INI_3 INI_4 VALUE_1 VALUE_2 VALUE_3
Re: Access elements in the nested array
by choroba (Chancellor) on May 26, 2011 at 09:03 UTC
    Try $ini->[2][0], $ini->[3][0] etc.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://906770]
Approved by SilasTheMonk
help
Chatterbox?
[Corion]: Whee! Germanys Grand Central Airport (for Berlin, re-scheduled for the thrid or fourth time, to open now in 2018) has just fired their technical lead
[ambrus]: Corion: Is their budget estimate four times the initial estimate yet? Was the construction late by six months already three months after they started?
[marto]: I'll believe it when I see it. That's been due for many years now :P
[marto]: oddly the last time I was there I saw a zeppelin in flight for the first time
[Corion]: ambrus: I don't know how far the budget estimate has been overrun yet

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (10)
As of 2017-02-23 11:56 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Before electricity was invented, what was the Electric Eel called?






    Results (346 votes). Check out past polls.