Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl Monk, Perl Meditation

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

Comment on Re: Parsing data into an Array of Hashes
Download Code

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (9)
As of 2015-11-30 08:01 GMT
Find Nodes?
    Voting Booth?

    What would be the most significant thing to happen if a rope (or wire) tied the Earth and the Moon together?

    Results (765 votes), past polls