Are you sure you really want a hash?

If you use the first two numbers digits as keys to a hash, then you will wind up with duplicate keys, and some of your data will be lost.

Of course this may be what you want. But if not, perhaps what you really want is a LoL

Update 1: the following code shows you the difference between putting your data into a hash, or a LoL (List of Lists)..

Update 2: actually, that's not a LoL at all - it's just a straight list. If we change the @LOL assignment to read:

push @LoL, [$key, $value];
then we get a LoL :)
I confused myself because I initially thought you wanted to separate all the words on each line. But anyway, I'm sure you get the idea :)
#!/usr/bin/perl -wl use strict; use Data::Dumper::Simple; my %hash; my @LoL; while (<DATA>) { chomp; my ($key, undef, $value) = split /\s+/, $_, 3; $hash{$key} = $value; push @LoL, $key, $value; } print Dumper(%hash); print Dumper(@LoL); __DATA__ 73 63, galileo measur us newton basi law motion 75 45, galileo experi bodi roll slope act same forc weight effect +make constantli speed up 70 50, show real effect forc chang speed bodi set move previous th +ought 75 50, meant bodi act forc keep move straight line same speed 65 45, idea first state explicitli newton principia mathematica pu +blish 1687 known newton first law 75 50, happen bodi forc act given newton second law
Output:
%hash = ( '70' => 'show real effect forc chang speed bodi set move pre +vious thought', '75' => 'happen bodi forc act given newton second law', '73' => 'galileo measur us newton basi law motion', '65' => 'idea first state explicitli newton principia mathem +atica publish 1687 known newton first law' ); @LoL = ( '73', 'galileo measur us newton basi law motion', '75', 'galileo experi bodi roll slope act same forc weight effect m +ake constantli speed up', '70', 'show real effect forc chang speed bodi set move previous tho +ught', '75', 'meant bodi act forc keep move straight line same speed', '65', 'idea first state explicitli newton principia mathematica pub +lish 1687 known newton first law', '75', 'happen bodi forc act given newton second law' );

Cheers,
Darren :)


In reply to Re: Split results of Map function by McDarren
in thread Split results of Map function by Gavin

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.