Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine
 
PerlMonks  

Re: How to sort output?

by Zaxo (Archbishop)
on Jul 22, 2007 at 07:11 UTC ( #628091=note: print w/replies, xml ) Need Help??


in reply to How to sort output?

This is a good use for a Schwarzian transformation, though you could have set it up previously. Replacing line 50:

my @sorted = map { $_->[1] } sort { $a->[0] <=> $b->[0] } map { [ /alive\s+(\d*\.\d*)\s+ms$/ ? ($1) : (), $_ ] } <IF>;
Untested.

The idea is to bundle the raw data with the extracted data to sort on, do the sort, then strip out the raw data again. It would be more thoughtful to keep the sort data from earlier. The regex I use could be slimmed down, it's a first cut.

All the lines which don't match get grouped together at the start with my construction.

After Compline,
Zaxo

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://628091]
help
Chatterbox?
[moritz]: choroba in python I use jsonschema
[moritz]: I'm sure there's a Perl implementation of it too
[choroba]: it seems Kelp and similar help you a lot with dispatching, but how to do something similar with contents?
[moritz]: like JSON::Schema
[Corion]: ambrus++ # more bugs than lines
[Corion]: That's like "works on my machine" ;-)
[choroba]: I mean, I'd like to say "this path should run this sub, but first it should check the user is authenticated, has the following permissions, and the contents is valid against a given schema
[ambrus]: no, that means I haven't even tried to run it, might not even parse
[ambrus]: so it doesn't work on my machine
[choroba]: i.e. I know JSON::Schema, I'm just curious whether there's a ready solution to plug it into a web service

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (9)
As of 2016-12-08 12:53 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    On a regular basis, I'm most likely to spy upon:













    Results (141 votes). Check out past polls.