I did it so: use Modern::Perl;
use Data::Dump qw/dump/;
my %acn_database;
while (<DATA>) {
last if /END/;
my ($acn, $orfname) = split /\sORFNames=|\s/;
$acn_database{$acn} = [$orfname];
}
while (<DATA>) {
my ($acn, @pf_data) = split /\s\|\s|\s/;
push @{$acn_database{$acn}}, @pf_data;
}
say dump(\%acn_database);
__DATA__
Q197F8 ORFNames=IIV3-002R
Q197F7 ORFNames=IIV3-003L
Q6GZX2 ORFNames=FV3-003R
Q6GZX1 ORFNames=FV3-004R
Q197F5 ORFNames=IIV3-005L
Q6GZX0 ORFNames=FV3-005R ;PF02393
Q91G88 ORFNames=IIV6-006L ;PF12299;PF04383
Q6GZW9 ORFNames=FV3-006R
END
Q197F8 | PF04947.9
Q91G88 | PF01486.12 PF00319.13
I have assumed that the stray space at the first line of your first file is just a typo. Note that this will still do the right thing if you have multiple lines in your second file with the same accession numbers: their data will just be added to right array in the hash.
CountZero A program should be light and agile, its subroutines connected like a string of pearls. The spirit and intent of the program should be retained throughout. There should be neither too little or too much, neither needless loops nor useless variables, neither lack of structure nor overwhelming rigidity." - The Tao of Programming, 4.1 - Geoffrey James My blog: Imperial Deltronics
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
Outside of code tags, you may need to use entities for some characters:
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.
|
|