Perlのハッシュ2024 年の最新の入門チュートリアル。このコースでは ハッシュを作成します,アクセスハッシュ要素,ハッシュ値を読みます,ハッシュキーと値を読み取り,要素が存在する検出,ハッシュサイズを取得します。,追加または要素を削除ハッシュ, について学習できます。
ハッシュはキー/値のペアです。
Perlのハッシュ変数は、パーセント記号(%)記号で始まります。
アクセスハッシュ要素フォーマット:$ {キー}。
以下は、単純なハッシュインスタンスです:
#!/usr/bin/perl %data = ('google', 'google.com', 'w3big', 'w3write.com', 'taobao', 'taobao.com'); print "\$data{'google'} = $data{'google'}\n"; print "\$data{'w3big'} = $data{'w3big'}\n"; print "\$data{'taobao'} = $data{'taobao'}\n";
上記のプログラムは、出力は次のようになります。
あなたは、次の2つの方法のハッシュを作成することができます。
$data{'google'} = 'google.com'; $data{'w3big'} = 'w3write.com'; $data{'taobao'} = 'taobao.com';
キーのリストの最初の要素は、第二の値です。
%data = ('google', 'google.com', 'w3big', 'w3write.com', 'taobao', 'taobao.com');
また、キー/値を設定する=>記号を使用することができます。
%data = ('google'=>'google.com', 'w3big'=>'w3write.com', 'taobao'=>'taobao.com');
次の例では、上記の例、使用の変異体である-の代わりに引用符:
%data = (-google=>'google.com', -w3big=>'w3write.com', -taobao=>'taobao.com');
このモードでは、キーを使用すると、要素の道を読んで、スペースを入れることはできません。
$val = %data{-google} $val = %data{-w3big}
アクセスハッシュ要素フォーマット:$ {キー}次のように、例を示します。
#!/usr/bin/perl %data = ('google'=>'google.com', 'w3big'=>'w3write.com', 'taobao'=>'taobao.com'); print "\$data{'google'} = $data{'google'}\n"; print "\$data{'w3big'} = $data{'w3big'}\n"; print "\$data{'taobao'} = $data{'taobao'}\n";
上記のプログラムは、出力は次のようになります。
あなたは、ハッシュから配列の抽出値を好きなことができます。
@ {キー1、キー2}:ハッシュ値は、配列構文を抽出します 。
#!/uer/bin/perl %data = (-taobao => 45, -google => 30, -w3big => 40); @array = @data{-taobao, -w3big}; print "Array : @array\n";
上記のプログラムは、出力は次のようになります。
Array : 45 40
次のように我々は、すべてのハッシュキーを読み取るためにファンクションキーを使用することができ、構文は次のとおりです。
keys %HASH
この機能は、すべてのすべてのキーハッシュの配列を返します。
#!/usr/bin/perl %data = ('google'=>'google.com', 'w3big'=>'w3write.com', 'taobao'=>'taobao.com'); @names = keys %data; print "$names[0]\n"; print "$names[1]\n"; print "$names[2]\n";
上記のプログラムは、出力は次のようになります。
taobao google w3big
私は、ハッシュ値のすべての値を読み取るために同様の機能を使用することができますどのような次のように、構文は次のとおりです。
values %HASH
この機能は、すべてのハッシュのすべての値の配列を返します。
#!/usr/bin/perl %data = ('google'=>'google.com', 'w3big'=>'w3write.com', 'taobao'=>'taobao.com'); @urls = values %data; print "$urls[0]\n"; print "$urls[1]\n"; print "$urls[2]\n";
上記のプログラムは、出力は次のようになります。
taobao.com w3write.com google.com
あなたは、ハッシュに存在しないキー/値のペアを読み、不定値が返され、警告アラームの実装であれば。
このような状況を回避するために、我々は存在が読み込み時にキーが、存在するか否かを判断するために存在する機能を使用することができます。
#!/usr/bin/perl %data = ('google'=>'google.com', 'w3big'=>'w3write.com', 'taobao'=>'taobao.com'); if( exists($data{'facebook'} ) ){ print "facebook 的网址为 $data{'facebook'} \n"; } else { print "facebook 键不存在\n"; }
上記のプログラムは、出力は次のようになります。
facebook 键不存
我々はIF使用上のコードja.私たちは、特定の紹介後のセクションでELSEステートメント。
ハッシュサイズは、我々がキーまたは値に配列のすべての要素を介して取得してから、ハッシュのサイズを取得する配列要素の数を計算できる要素の数である次のように、例を示します。
#!/usr/bin/perl %data = ('google'=>'google.com', 'w3big'=>'w3write.com', 'taobao'=>'taobao.com'); @keys = keys %data; $size = @keys; print "1 - 哈希大小: $size\n"; @values = values %data; $size = @values; print "2 - 哈希大小: $size\n";
上記のプログラムは、出力は次のようになります。
1 - 哈希大小: 3 2 - 哈希大小: 3
追加のキー/値のペアは、単純な代入によって行うことができます。 しかし、ハッシュ要素を削除するには削除機能を使用する必要があります。
#!/usr/bin/perl %data = ('google'=>'google.com', 'w3big'=>'w3write.com', 'taobao'=>'taobao.com'); @keys = keys %data; $size = @keys; print "1 - 哈希大小: $size\n"; # 添加元素 $data{'facebook'} = 'facebook.com'; @keys = keys %data; $size = @keys; print "2 - 哈希大小: $size\n"; # 删除哈希中的元素 delete $data{'taobao'}; @keys = keys %data; $size = @keys; print "3 - 哈希大小: $size\n";
上記のプログラムは、出力は次のようになります。
1 - 哈希大小: 3 2 - 哈希大小: 4 3 - 哈希大小: 3