加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl 引用备忘

发布时间:2020-12-16 00:31:28 所属栏目:大数据 来源:网络整理
导读://$ref是一个匿名数组引用,同时嵌套着匿名数组引用,匿名散列引用? my?$ ref ?=?[1,2,3,['a','b','c'],{ a = 1, b = 2, c = 3,},];? ? //访问其中的一个元素1 printf?"%dn",$ref- [0];? printf?"%dn",$$ref[0];? printf?"%dn",${$ref}[0];? ? //访问其中
 
 
  1. //$ref是一个匿名数组引用,同时嵌套着匿名数组引用,匿名散列引用?
  2. my?$ref?=?[1,2,3,['a','b','c'],{a=>1,b=>2,c=>3,},];?
  3. ?
  4. //访问其中的一个元素1
  5. printf?"%dn",$ref->[0];?
  6. printf?"%dn",$$ref[0];?
  7. printf?"%dn",${$ref}[0];?
  8. ?
  9. //访问其中的一个嵌套的匿名数组引用的值a
  10. printf?"%sn",$ref->[3]->[0];?
  11. printf?"%sn",$$ref[3][0];?
  12. printf?"%sn",${$ref}[3][0];?
  13. ?
  14. //访问其中的一个嵌套的匿名散列引用
  15. printf?"%dn",$ref->[4]->{a};?
  16. printf?"%dn",${$ref}[4]{a};?
  17. ?
  18. print?@{$ref->[3]},"n";?
  19. print?keys?%{$ref->[4]},"n";?
  20. print?values?%{$ref->[4]},"n";?
  21. ?
  22. my?$i?=?0;?
  23. ?
  24. while?($i?<?3)?{?
  25. ???????print?$ref->[3]->[$i],"n";?
  26. }continue{$i++;};?
  27. ??????????????????????????????????

?一个使用引用的sample

 
 
  1. my?$ref?=?{};?
  2. ?
  3. open?my?$file,'<','/etc/passwd'?or?die?"$!n";?
  4. ?
  5. while?(<$file>)?{?
  6. ???????chomp;?
  7. ???????my?@array?=?split?/:/;?
  8. ?
  9. ???????if?($array[6])?{?
  10. ??????????if?(exists?$ref->{$array[6]})?{?
  11. ??????????????${$ref}{$array[6]}?++;?
  12. ??????????}?
  13. ??????????else?{?
  14. ??????????????${$ref}{$array[6]}?=?1;?
  15. ??????????}?
  16. ???????}?
  17. ?
  18. }?
  19. ?
  20. close?$file;?
  21. ?
  22. =head?
  23. for?my?$str?(sort?keys?%$ref)?{?
  24. ????printf?"%-20s%dn",$str,$ref->{$str};?
  25. }?
  26. =cut?
  27. ?
  28. while?(my?($key,$val)?=?each?%$ref)?{?
  29. ???????printf?"%-20s%dn",$key,$val;?
  30. }?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读