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

Re: pattern matching and array comparison

by GrandFather (Saint)
on Jun 13, 2005 at 22:28 UTC ( [id://466308]=note: print w/replies, xml ) Need Help??


in reply to pattern matching and array comparison

Using a hash is probably a better way to do it. Something like this may be what you want:

use warnings; use strict; my %Ids; open (IDS, "$ARGV[0]") or die "unable to open file $!\n"; while (<IDS>) { chomp; $Ids {$_} = undef; } close IDS; open (GENES, "$ARGV[1]") or die "unable to open file $!\n"; my @genes; while (<GENES>) { if (/^>/) { unshift @genes, substr "$_ ", 1; } else { $genes[0] .= $_; } } close GENES; foreach my $gene (@genes) { my ($id) = $gene =~ /^(.*?)[,\s]/g; next if ! defined $id; ++$Ids{$id}; } foreach (sort keys %Ids) { print "$_\n" if defined $Ids{$_}; }

Assumes sample data given in original node.

dbj|BA000040|:2701685-2702539 gi|11995001:156374-156649

Perl is Huffman encoded by design.

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others meditating upon the Monastery: (9)
As of 2024-04-19 07:56 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found