note
afoken
<blockquote><c>$key => { map { split m{\s*=\s*} } @record }</c></blockquote>
<p>Try that with values containing "=". Like this:</p>
<c>
[CELL_NAME1]
COMMENT = "Perl parsing = oh no"
FIRST = "TEST1"
SECOND = "ID1"
THIRD = 123
FOURTH = "THREE"
FIFTH = 12345
SIXTH = 6789
SEVENTH = QWERTY
[CELL_NAME2]
COMMENT = "Tester"
FIRST = "TEST2"
SECOND = "ID2"
THIRD = 1234
FOURTH = "FOUR = bad"
FIFTH = 12345
SIXTH = BOARD
SEVENTH = MOUSE
[CELL_NAME3]
COMMENT = "Parser"
FIRST = "TEST3"
SECOND = "ID3 = and how = did this = happen?"
THIRD = 12345
FOURTH = "FIVE"
FIFTH = 12345
SIXTH = PAD
SEVENTH = KEY
EOF
</c>
<p>Did you expect that?</p>
<c>
>perl 1179657.pl
Odd number of elements in anonymous hash at 1179657.pl line 45, <$inFH> chunk 3.
Odd number of elements in anonymous hash at 1179657.pl line 45, <$inFH> chunk 3.
Odd number of elements in anonymous hash at 1179657.pl line 45, <$inFH> chunk 3.
%HoH = (
'CELL_NAME1' => {
'"ID1"' => 'THIRD',
'"TEST1"' => 'SECOND',
'"THREE"' => 'FIFTH',
'123' => 'FOURTH',
'12345' => 'SIXTH',
'6789' => 'SEVENTH',
'COMMENT' => '"Perl parsing',
'QWERTY' => undef,
'oh no"' => 'FIRST'
},
'CELL_NAME2' => {
'12345' => 'SIXTH',
'BOARD' => 'SEVENTH',
'COMMENT' => '"Tester"',
'FIRST' => '"TEST2"',
'FOURTH' => '"FOUR',
'MOUSE' => undef,
'SECOND' => '"ID2"',
'THIRD' => '1234',
'bad"' => 'FIFTH'
},
'CELL_NAME3' => {
'"FIVE"' => 'FIFTH',
'12345' => 'SIXTH',
'COMMENT' => '"Parser"',
'FIRST' => '"TEST3"',
'KEY' => undef,
'PAD' => 'SEVENTH',
'SECOND' => '"ID3',
'and how' => 'did this',
'happen?"' => 'THIRD'
}
);
>
</c>
<p>Hint: [doc://split] accepts THREE arguments.</p>
<p>Alexander</p>
<div class="pmsig"><div class="pmsig-747201">
--<br>
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so". ;-)
</div></div>
1179628
1179657