Beefy Boxes and Bandwidth Generously Provided by pair Networks
No such thing as a small change
 
PerlMonks  

Re: Reading from text file

by NetWallah (Canon)
on Mar 23, 2018 at 05:52 UTC ( [id://1211588]=note: print w/replies, xml ) Need Help??


in reply to Reading from text file

Welcome to perlmonks!

You can do this by parsing each line of input, collecting the required pieces into an appropriate data structure (I suggest a hash).
After the entire file is read, print out the results.

We do not generally answer 'homework' questions when no effort is shown, so the following code does works, but is deliberately cryptic.

$ perl -aF: -ne 'chomp @F;push @{$h{$F[0]}},$F[2]}{print join(":",$_ +,@{$h{$_}}),"\n" for sort keys %h' Your-file.txt China:2:2:70 Japan:6:10 Thailand:6
I'm sure this code will generate more questions. Please post those here , showing how it conflicts with your understanding.

Alternatively, post some code you have tried, and ask questions about which parts cause you difficulty.

                Memory fault   --   brain fried

Replies are listed 'Best First'.
Re^2: Reading from text file
by jwkrahn (Abbot) on Mar 23, 2018 at 06:27 UTC
    perl -aF: -ne 'chomp @F;push @{$h{$F[0]}},$F[2]}{print join(":",$_,@{$ +h{$_}}),"\n" for sort keys %h'

    Are we going for golf?    :-)

    echo "China:wd:2 Japan:wd:6 China:sg:2 Japan:sg:10 China:kng:70 Thailand:kng:6" | perl -F: -le'push@{$h{$F[0]}},$F[2]}{$,=":";print$_, +@{$h{$_}}for sort keys%h' China:2:2:70 Japan:6:10 Thailand:6

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others imbibing at the Monastery: (5)
As of 2024-04-25 16:23 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found