一个匿名散列表的问题

一个匿名散列表的问题

一个匿名散列表的问题
下面的程序是要从文件中读取信息:
my(%hash,$line,$proc)
open F,"d:/perl/bin/story.txt";
while($line=<F>){
chomp($line);
next if $line=~/^\s*$/;
if ($line=~/^number.*:\s*(.*)/){
[color=#0000FF]$hash{$1}=$proc={};[/color]
}elseif{
.....
}
}
搞不明白[color=#0000FF]蓝色的部分[/color]要干什么?
有谁可以。。。
$hash{$1}=$pro...
$hash{$1}=$proc={};
相当于:
$proc={}; # $proc是一个匿名散列(或者叫哈希表)的引用,
$hash{$1}=$proc; # 将 $line=~/^number.*:\s*(.*)/ 中(.*)匹配到的值$1作为%hash的关键字,$hash{$1}的值就是先前的匿名散列引用。

至于$hash{$1}为什么要等于一个匿名散列的引用,那要你多贴一些代码出来才知道...