perl 编程仍然有问题,我需要被推动才能完成脚本。我有两个文件,我想使用列表文件从数据中“提取”行。问题是列表文件的格式如下:
X1 A B
X2 C D
X3 E F
我的数据如下所示:
A X1 2 5
B X1 3 7
C X2 1 4
D X2 1 5
我需要从列表文件中获取元素对,通过它选择数据文件中的行。同时我想写一个这样的输出:
X1 A B 2 5 3 7
X2 C D 1 4 1 5
我正在尝试编写 perl 代码,但我无法产生有用的东西。我在这一点上:
open (LIST, "< $fils_list") || die "impossibile open the list";
@list = <LIST>;
close (LIST);
open (HAN, "< $data") || die "Impossible open data";
@r = <HAN>;
close (HAN);
for ($p=0; $p<=$#list; $p++){
chomp ($list[$p]);
($x, $id1, $id2) = split (/\t/, $list[$p]);
$pair_one = $id1."\t".$x;
$pair_two = $id2."\t".$x;
for ($i=0; $i<=$#r; $i++){
chomp ($r[$i]);
($a, $b, $value1, $value2) = split (/\t/, $r[$i]);
$bench = $a."\t".$b;
if (($pair_one eq $bench) || ($pair_two eq $bench)){
print "I don't know what does this script must print!\n";
}
}
}
我无法合理化要打印的内容。任何形式的建议都非常受欢迎!