作者pttask (批踢踢.问.XD)
看板Perl
标题[问题] 阵列同一时间的 delete 之作法 !?
时间Wed May 14 14:37:47 2008
@TRY=qw(b c a d e a );
@TRY2=qw(c b d e g h i j);
#假设我有两个Array,想要做交互比对
#TRY => a , a
#TRY2 => g , h , i , j
@backup=@TRY;
@backup2=@TRY2;
$check_memory =0;
for(0...$#TRY)
{
$tmp1=$_;
for(0...$#TRY2)
{
$tmp2=$_;
if($TRY[$tmp1] eq $TRY2[$tmp2])
#做内容的比对
{
$check_memory="\"".$check_memory."\"".",".$tmp1;
#比对到的 index 存放起来 , 给下面 delete 使用
}
}
}
for(0...$#TRY2)
{
$tmp1=$_;
for(0...$#TRY)
{
$tmp2=$_;
if($TRY2[$tmp1] eq $TRY[$tmp2])
{
$check_memory2="\"".$check_memory."\"".",".$tmp1;
}
}
}
delete @backup[
$check_memory];
delete @backup2[
$check_memory2];
#可是这样好像不太行 ... 因为我想要同一时间对该Array做处理
这样我就可以比对到 TRY 跟 TRY2 这两个 array 内容之不同处
请问我的方式跟思维有那部份是错误的吗?麻烦指引,谢谢 :~)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.228.148.194