-8
A
回答
0
@pataka:我不是印刷两次,但做两个字母数字字符串比较。所以我已经打印一个蜇伤和另一个数字。我们甚至可以这样做,如下所示:
#Same Key and Value
foreach my $val1 (keys %hash1)
{
foreach my $val2 (keys %hash2) {
if($val1 eq $val2) {
if($hash1{$val1} eq $hash2{$val2}) {
print "Key:$val1\t" ;
print "Value:$hash1{$val1}\n";
}
}
}
}
+0
非常感谢Praveen .... – pataka 2014-09-01 06:54:42
0
@pataka:寻找到下面的代码,如果它是有帮助的:
#!/usr/bin/perl
use strict;
use warnings;
my %hash1 = ('Jan' => 1 , 'Feb' => "abc" , 'Mar' => 3);
my %hash2 = ('Jan' => 85 , 'Feb' => 44 , 'Mar' => 3 , 'Apr' => 23);
#Same key
foreach my $val1 (keys %hash1)
{
foreach my $val2 (keys %hash2) {
if($val1 eq $val2) {
print $val1 . "\n";
}
}
}
#Same Value
foreach my $val1 (values %hash1)
{
foreach my $val2 (values %hash2) {
if($val1 eq $val2) {
print $val1 . "\n";
}
}
}
#Same Key and Value
foreach my $val1 (keys %hash1)
{
foreach my $val2 (keys %hash2) {
if($val1 eq $val2 && $val1 =~ m/\d+/) {
if($hash1{$val1} == $hash2{$val2}) {
print $val1;
}
}
if($val1 eq $val2 && $val1 =~ m/[A-za-z ]+/) {
if($hash1{$val1} eq $hash2{$val2}) {
print $val1;
}
}
}
}
+0
感谢Praveen的回应...我很困惑我应该从上面的选择中选择哪一个。在我的情况下,我想在另一个哈希表中找到确切的键值对macthes,然后打印键和值都...我认为我应该去#Same键和值...但为什么你打印val1两次,并打印键我应该使用$ hash1 {$ val1} ...请指教 – pataka 2014-09-01 04:29:14
相关问题
- 1. perl,比较哈希,子集
- 2. 在Perl中比较数值的两个哈希值按价值比较Perl
- 3. Perl - 比较两个嵌套哈希
- 4. Perl中两个哈希的比较
- 5. 在Perl中比较多个哈希值的密钥值
- 6. 比较哈希
- 7. 比较来自多个哈希值
- 8. 比较两个密码哈希值 - nodejs
- 9. 比较两个哈希集?
- 10. 如何比较两个哈希表
- 11. 比较Python哈希
- 12. 红宝石比较2哈希
- 13. 比较2个Java哈希集合中的键值
- 14. 排序查找在Perl在另一个哈希比较阵列的哈希
- 15. 比较2个哈希中的2个处理密钥
- 16. Perl:将数组的2个哈希与另一个数组进行比较
- 17. Perl的哈希值排序和比较它
- 18. Perl将数组内容与哈希值进行比较
- 19. Perl哈希哈希
- 20. hw我可以比较两个perl哈希(键和值)提取差异并将其应用于哈希值javascript
- 21. Perl按哈希值排序哈希
- 22. 如何比较两个包含〜25000个哈希的哈希?
- 23. 哈希混合值类型比较
- 24. Python的MD5哈希值进行比较
- 25. 关于比较MD5哈希值
- 26. C:比较哈希值似乎消失
- 27. 如何将一个文件的哈希键与另一个哈希值的哈希值进行比较
- 28. Perl:沿着多个哈希比较散列键
- 29. 如何比较perl中的两个多级哈希
- 30. perl使用具有多个密钥的哈希比较文件
这会弹出所有的时间SO - 您是否搜索了关于该主题的现有问题? – 2014-08-31 16:50:38
你的意思是相同的键*和*相同的值?只是检查是否有*任何*?或者得到一个相同的列表? – ysth 2014-08-31 17:06:11