#!/usr/bin/perl use strict; use warnings; my %data; open (SHIFTS,"file1.txt") or die; open (PDB, "file2.txt") or die; while (my $line = ) { chomp $line; my @fields = split(/\t/,$line); $data{$fields[4]} = $fields[2]; } close PDB; while (my $line = ) { chomp($line); my @columns = split(/\t/,$line); my $value = ($columns[1] =~ m/^.*?([A-Za-z])/ ); } if (my $value = $data{"$_"}) print "$columns[0]\t$fields[3]\t$value\t$data{$value}\n"; close SHIFTS; exit;