Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight

Re: Parsing data into an Array of Hashes

by kesterkester (Hermit)
on Sep 18, 2003 at 13:10 UTC ( #292378=note: print w/replies, xml ) Need Help??

in reply to Parsing data into an Array of Hashes

This is a little clunky, and could use some whitespace-stripping, but it'll get across the general idea:

The while loop loops over your data, and the split breaks your line into a list of comma- and equal sign-separated items.

This list is then converted into an anonymous hash with the {} operator, and that hash is pushed onto the array @structure.

Note that this will work incorrectly if your values or field names have "="s or ","s in them.

#!perl use warnings; use strict; use Data::Dumper; my @structure; while (<DATA>) { chomp; push @structure, { split /,|=/ }; } print Dumper \@structure; __DATA__ Field1= a value,Field2= another value, Field3= yet another value Field1= a second value,Field2= another second value, Field3= yet anoth +er second value

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://292378]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (3)
As of 2017-01-17 05:29 GMT
Find Nodes?
    Voting Booth?
    Do you watch meteor showers?

    Results (152 votes). Check out past polls.