#!/usr/bin/perl use strict; # https://perlmonks.org/?node_id=11144847 use warnings; my %res; /(id\d+)(.*)/s and push @{ $res{$2} }, $1 for split />/, join '', <DAT +A>; for ( sort keys %res ) { local $" = '|'; print ">@{$res{$_}}$_"; } __DATA__ >id1|Q51487|P-474-4|86-98,113-126,297-310,322-335 CSLIPDYQRPEAPVAAAYPQGQAYGQNTGAAAVPAADIGWREFFRDPQLQQLIGVALE >id2|Q51487|P-474-4|86-98,113-126,297-310,322-335 CSLIPDYQRPEAPVAAAYPQGQAYGQNTGAAAVPAADIGWREFFRDPQLQQLIGVALE >id3|Q51487|P-474-4|86-98,113-126,297-310,322-335 CSLIPDYQRPEAPVAAAYPQGQAYGQNTGAAAVPAADIGWREFFRDPQLQQLIGVALE >id4|Q51487|P-474-4|86-98,113-126,297-310,322-335 alt CSLIPDYQRPEAPVAAAYPQGQAYGQNTGAAAVPAADIGWREFFRDPQLQQLIGVALE >id5|Q51487|P-474-4|86-98,113-126,297-310,322-335 alt CSLIPDYQRPEAPVAAAYPQGQAYGQNTGAAAVPAADIGWREFFRDPQLQQLIGVALE
Outputs:
>id1|id2|id3|Q51487|P-474-4|86-98,113-126,297-310,322-335 CSLIPDYQRPEAPVAAAYPQGQAYGQNTGAAAVPAADIGWREFFRDPQLQQLIGVALE >id4|id5|Q51487|P-474-4|86-98,113-126,297-310,322-335 alt CSLIPDYQRPEAPVAAAYPQGQAYGQNTGAAAVPAADIGWREFFRDPQLQQLIGVALEc>
In reply to Re: How do I use the map command for this?
by tybalt89
in thread How do I use the map command for this?
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |