($j=$i) =~ s/G(.+)/Galpha-$1/;
my @values = ($j =~ /(Galpha-[it])/
? map{$1.$_}1..3
: ($j)
);
####
if ($_=~/^.*\t.*\t(.*)\t.*\t.*/mgi)
####
use strict;
use warnings;
while (){
chomp;
next unless my $i = (split/\t/,$_)[2];
my $f = $_;
$i =~ s/ //g;
(my $j = $i) =~ s/G(.+)/Galpha-$1/;
my @values = ($j =~ /(Galpha-[it])/
? map{$1.$_}1..3
: ($j)
);
for my $val (@values) {
my $k = $f;
$k =~ s/$i/$val/g;
print "$k\n";
}
}
__DATA__
biologist xargon Gi question
perl monks G11 answer?
# prints
biologist xargon Galpha-i1 question
biologist xargon Galpha-i2 question
biologist xargon Galpha-i3 question
perl monks Galpha-11 answer?