in reply to parsing metadata
use warnings; use strict; my %atts; my $att; while (<DATA>) { chomp; $att = $1 if /^attribute:\s+(.+)/; $atts{$att} = $1 if /^value:\s+(.+)/; } use Data::Dumper; $Data::Dumper::Sortkeys=1; print Dumper(\%atts); __DATA__ AVUs defined for dataObj 3a/73/2c/metadata.csv: attribute: dcterms:created value: 2014-08-13T00:00:10 units: ---- attribute: control value: 0 units: ---- attribute: md5 value: 3a732cd0fddaa80fa65fcf28664eaf6d units: ----
Outputs:
$VAR1 = { 'control' => '0', 'dcterms:created' => '2014-08-13T00:00:10', 'md5' => '3a732cd0fddaa80fa65fcf28664eaf6d' };
Your input probably has several records, in which case you can look at perldsc.
Of course, if this is some standard format, there's probably a better solution on CPAN.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^2: parsing metadata
by AppleFritter (Vicar) on Sep 05, 2014 at 15:18 UTC | |
by Anonymous Monk on Sep 05, 2014 at 15:35 UTC | |
by AppleFritter (Vicar) on Sep 05, 2014 at 15:51 UTC | |
by Anonymous Monk on Sep 05, 2014 at 16:07 UTC |