擅长:python、mysql、java
<p>这可能是一个解决方案,但你真的应该尝试过。。。你知道吗</p>
<pre><code>#!/usr/bin/env perl
use strict;
use warnings;
use feature qw{say};
{
while (<DATA>) {
my ($column1, $group1, $group2) = $_ =~ /^(\w+)\s+([\d;\s]+)(GO.*)$/;
$group1 =~ s/\s//g; # Strip spaces / tabs
my @list = split /;/, $group1;
foreach my $element (@list) {
say "$column1\t$element\t$group2";
}
}
}
__DATA__
Q6GZX4 81941549; 47060116; 49237298 GO:0006355; GO:0046782; GO:0006351
Q6GZX1 81941546; 49237301 GO:0033644; GO:0016021
Q6GZW6 49237306 GO:0005524; GO:0003677; GO:0004386
Q6GZW5 81941542; 49237307 GO:0033644; GO:0016021
</code></pre>