G_00160 F_02571
G_00161 F_01082
G_00162 F_00034
G_00163 F_00035
G_00164 F_00036
####
F_00013 G_06670
F_00034 G_00162
F_00035 G_00163
F_00036 G_00164
F_00038 G_00165
####
open $IN1, "<", $infile1 or die "cannot open $infile1: $!\n";
open $IN2, "<", $infile2 or die "cannot open $infile2: $!\n";
open $OUT, ">", $outfile or die "cannot open $outfile: $!\n";
my(@UR_CI) = <$IN1>;
my(@CI_UR) = <$IN2>;
my(%UR_CI, %CI_UR);
foreach my $seq (@UR_CI) {
if ($seq =~ /^(\w+)\s+(\w+)$/) {
$UR_CI{"$1"} = "$2";
}
}
foreach my $seq (@CI_UR) {
if ($seq =~ /^(\w+)\s+(\w+)$/) {
$CI_UR{"$2"} = "$1";
}
}
foreach my $key1 (keys %UR_CI) {
foreach my $key2 (keys %CI_UR) {
foreach my $value1 (values %UR_CI) {
foreach my $value2 (values %CI_UR) {
if (($UR_CI{$key1} eq $CI_UR{$key2}) && ($UR_CI{$value1} ne $CI_UR{$value2})) {
delete $UR_CI{$key1};
}
}
}
}
}
while ( my ($key, $value) = each(%UR_CI) ) {
print $OUT "$key => $value\n";
}