您的位置:首页 > 其它

perl知识点

2006-06-30 19:08 204 查看
最近工作中一直在用perl写程序。 尽管perl不是我学习方向,但还是对工作中遇到的一些知识点做下总结,以备后用。

1。定义一个哈希(散列或关联数组)
%FOR=(
"aaa"=>"001",
"bbb"=>"002",
"ccc"=>"003",
"ddd"=>"004",
);


2。取关联数组里的单个数据:$FOR{"aaa"},或用简单变量:$FOR{$tmp_par}.

定义一个二维关联数组
%FOR1=(
"aaa"=>"001",
"bbb"=>"002",
"ccc"=>"003",
"ddd"=>"004",
);
%FOR2=(
"xxx"=>"how",
"yyy"=>"are",
"zzz"=>"you",
);


%TO_FOR=(
"0"=>/%FOR1,
"1"=>/%FOR2,
);


/表示用来取%FOR1和%FOR2的地址。
这样就可以通过$TO_FOR{"0"}{"aaa"}得到001.

3。在perl里递归调用子程序,该子程序一定要有停止调用本身的代码,如return语句。另外,除了不被子程序改变的变量外,所有的变量必须的局部的,即用my声明.

4。在用split()以?,.,+,*等字符分割时,需要加上转义/,如:split('/?',$some_string);

5。将分割的自串放到数组里:my @temp=split('/',$tmp_s2);
接着可以用@temp得到数组大小,如:my $size = @temp;$size即为数组temp的大小。

6。对数组循环:
foreach my $u (@arr_tmp)
{
...
}


7。判断一个字串是否匹配一个模式,可用$u=~/tre|world|mp3/
如:my $pattern="tre|world|mp3"
if($u=~/$pattern/)
{
#匹配
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: