【发布时间】:2011-12-28 04:05:40
【问题描述】:
我有 2 个数组
@a = qw/ A B C D E /;
@b = qw/ B B C A /;
我需要检查相同的元素是否出现在每个数组的相同位置
例如 $a[2] = "B"; $b[3] = "C";如果是这样,请计算这种情况发生的次数 它需要忽略任何空白元素
例如 $a[6] = ; $b[6] = ;cmets 非常感谢我喜欢理解脚本。
我尝试过 intersect eq == cmp 等,但我不太明白,也不太确定
提前致谢。
到目前为止,这是我的代码:
#!/usr/bin/perl -w
my @a = <FILE1>;
my @b = <FILE2>;
$occurs = 0; #Using eq
foreach my $letter (@a) {
if (my $letter2 (@a) eq $letter) { #Syntax error here
$count ++;
}
} #syntax error here
【问题讨论】:
-
请发布您尝试过的代码,并准确解释哪些代码不适用。
-
#!/usr/bin/perl -w my @a = ("A", "B", "C", "D", "E", " ", " ",);我的@b =(“B”,“B”,“C”,“”,“”,“A”); $发生 = 0; #Using eq foreach my $letter (@a){ if (my $letter2 (@a) eq $letter) { #语法错误 $count ++; } } #语法错误在这里 -
不要在 cmets 中发布代码,它完全不可读。检查我所做的编辑,它可能与您所拥有的不完全相同。
-
对不起,我是新来的。是的,不是。这是更广泛问题的一部分,我正在从文件中读取数组的内容。对于每个循环都会与此类似
-
@user1044326 :如果您需要比较文件,请说出来。像这样比较数组类似于在计算机时代发送电报。
标签: arrays perl compare equals match