Beefy Boxes and Bandwidth Generously Provided by pair Networks RobOMonk
good chemistry is complicated,
and a little bit messy -LW
 
PerlMonks  

Re: substring/regex question

by rjt (Chaplain)
on Aug 06, 2013 at 05:37 UTC ( #1048047=note: print w/ replies, xml ) Need Help??


in reply to substring/regex question

Update: I may have misread your question. I missed the one little word in your description that changes the whole premise: "sort". I now believe you actually want to print the input file sorted on the 3rd column, not just print the 3rd column. I'd use the Schwartzian Transform for a pure-Perl solution:

print for map { pop @$_ } sort { $a->[0] <=> $b->[0] } map { [ (split /,/)[3], $_ ] } <>;

Of course, the following non-Perl solution works just as well on your UNIX-ish OS:

sort -t, -k4 -n <trace.csv >rgextract.txt
#!/opt/local/bin/perl -w

It appears you're on OS X or other UNIX-ish OS, so given this, and the apparent regularity of your data, I'd probably use the following one-liner:

perl -F, -anE 'say $F[3]' <trace.csv >rgextract.txt

See perlrun for information on the switches used, but basically:

-F, Autosplit delimiter is ',' -a Enable autosplit fields into @F -n Assume while (<>) { ... } around program -E Eval one-line program with optional features (i.e., 'say', in this case)
use strict; use warnings; omitted for brevity.


Comment on Re: substring/regex question
Select or Download Code

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others about the Monastery: (11)
As of 2014-04-17 05:26 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    April first is:







    Results (439 votes), past polls