tnfh.net
当前位置:首页 >> pErl中如何判断一个字符串是否在一个哈希中的值中... >>

pErl中如何判断一个字符串是否在一个哈希中的值中...

实在是看不太懂你的需求,想判断一个字符是否同时在哈希的键和对应键的值里面。 如果是的话,个人觉得类似的代码是: #!perluse strict;use warnings;my %hash = ( # xxxx);my $file_name = 'xxxx';open my $fh, '

使用Perl中的ref方法,可以判断一个引用是指向hash还是array。 if (ref($user) eq 'HASH') { # $user 指向的是HASH .... } elsif (ref($user) eq 'ARRAY') { # $user 指向的是数组 .... } else { .... }

事实上你这样做是没有意义的。如果存在该键,你就不是添加新的,只能改变原键值。所以只需要判断该键是否存在。 你如果有这种需求,大概是需要用二级哈希 (!exists($a{$key1}->{$key2})) and ($a{$key1}->{$key2} = $value);

试验的: C:\Users\Administrator>perl -e "@a=(1,2); $b=[@a]; @c=@$b ; print \"@a : $b : @c \" " 1 2 : ARRAY(0xa031c20) : 1 2 建议将 my @prime_r = @neme_hasg{$str}; 修改为 my @prime_r = @$neme_hasg{$str}; 试试

my %m = ('a', 'b', 'c', 'd');my %n = ('a', 'b', 'c', 'd');my %h = ('a', 'b', 'e', 'd');my %k = ('a', 'b', 'e', 'd');print same(\%m, \%n), "\n";print same(\%h, \%k), "\n";print same(\%m, \%k), "\n";sub same{my ($m, $n) = @_;retu...

$hash{$_} = "Key is $_" foreach @array;

可以 @array=(1..5); $hash{$s2} = [$array[0],$array[1],$array[2]]; print $hash{$s2}[0]; print $hash{$s2}[1]; print $hash{$s2}[2];

只需要申明标量环境就可以了,据个例子如下 #!/usr/bin/perl -w use strict; use warnings; my %hash=map {$_=>$_+1} (1..6); print scalar keys %hash; --------------------------- 输出结果 6

在你的举例中 this为一个hash ,其中key header对应的为一个匿名hash $this{'header'}->{'a'} 这样就可以得到例子中a的值 修改的话直接 $this{'header'}->{'a'} ='c'; 这样就行~

嗯, 你总算学会问问题了! 试试这麼写吧... use strict;my %h;my $filename = "seq.txt";open my $seqFile, $filename or die "$! Can't open $filename";my @temp = ;close $seqFile;chomp @temp;s/^>// foreach @temp;%h = @temp;# 现在你可以p...

网站首页 | 网站地图
All rights reserved Powered by www.tnfh.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com