二维hash中如何删除元素~
时间:2010-12-03
来源:互联网
文件元素如下:
1 A 1988
2 B 223
2 C 456
1 D 122
将第二列和第一列作为hash的key;
现在需要需要删除 key1为A的一组数据;
如何操作呢?
1 A 1988
2 B 223
2 C 456
1 D 122
将第二列和第一列作为hash的key;
现在需要需要删除 key1为A的一组数据;
如何操作呢?
作者: zhuxiaolong2 发布时间: 2010-12-03
回复 zhuxiaolong2
delete吧
delete吧
作者: wtuter 发布时间: 2010-12-03
delete($hash{A});
用delete删除会留下空行,而且这样删除只是删除了 A 以外的数据~
请问如何删除整行呢
用delete删除会留下空行,而且这样删除只是删除了 A 以外的数据~
请问如何删除整行呢
作者: zhuxiaolong2 发布时间: 2010-12-03
先给个例子,看看明白不:
#!/usr/bin/perl -w
#use strict;
my %hash;
while (<DATA>){
my($key,$key1,$value)= split;
#print "$key\t$key1\t$value\n";
$hash{$key}->{$key1}=$value;
}
#my $del=delete $hash{"1"};
#print $del,"\n";
for (sort keys %hash){
my $rec={};
$rec=$hash{$_};
print "$_ => ";
my $del=delete $rec->{A};
for (sort keys %$rec){
print "$_ => $rec->{$_}\n";
}
}
__DATA__
1 A 1988
2 B 223
2 C 456
1 D 122
#!/usr/bin/perl -w
#use strict;
my %hash;
while (<DATA>){
my($key,$key1,$value)= split;
#print "$key\t$key1\t$value\n";
$hash{$key}->{$key1}=$value;
}
#my $del=delete $hash{"1"};
#print $del,"\n";
for (sort keys %hash){
my $rec={};
$rec=$hash{$_};
print "$_ => ";
my $del=delete $rec->{A};
for (sort keys %$rec){
print "$_ => $rec->{$_}\n";
}
}
__DATA__
1 A 1988
2 B 223
2 C 456
1 D 122
作者: liyangole 发布时间: 2010-12-03
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28