Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

Re: How can one join the shortest and longest strings of different text files?

by kcott (Archbishop)
on Jul 05, 2013 at 06:16 UTC ( [id://1042609]=note: print w/replies, xml ) Need Help??


in reply to How can one join the shortest and longest strings of different text files?

G'day supriyoch_2008,

Here's a technique that involves using the lengths of the original strings as hash keys.

$ perl -Mstrict -Mwarnings -E ' use autodie qw{:all}; my $ext = ".txt"; my @nums = 1 .. 3; my %result; for (@nums) { open my $fh, "<", $_ . $ext; while (<$fh>) { chomp; y/,//d; next unless length; $result{+length} .= $_; } close $fh; } my @sorted_keys = sort { $a <=> $b } keys %result; say "*** Input Data Strings ***"; say "Shortest: ", $sorted_keys[0]; say "Longest: ", $sorted_keys[-1]; say "*** Output Data Strings ***"; say $result{$_} for @sorted_keys; say "*** Two Shortest ***"; say $result{$_} for @sorted_keys[0, 1]; say "*** Two Longest ***"; say $result{$_} for @sorted_keys[-2, -1]; ' *** Input Data Strings *** Shortest: 1 Longest: 5 *** Output Data Strings *** ATG AATTGG AAATTTGGG AAAATTTTGGGG AAAAATTTTTGGGGG *** Two Shortest *** ATG AATTGG *** Two Longest *** AAAATTTTGGGG AAAAATTTTTGGGGG

I'm not sure how much of your other output was actually required or just for debugging; regardless, you should be able to add code for that quite easily.

-- Ken

  • Comment on Re: How can one join the shortest and longest strings of different text files?
  • Download Code

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others having a coffee break in the Monastery: (4)
As of 2024-04-24 04:28 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found