Perl分割字符串的一个精妙的写法

前端之家收集整理的这篇文章主要介绍了Perl分割字符串的一个精妙的写法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
 1 #!/usr/bin/perl -w
 2 use strict;  3 use warnings;  4 
 5 #分割字符串的一个精妙的写法
 6 sub spliteName  7 {  8     my $fileName = shift ;  9     my $arr_hash_ref = shift ; 10     open my $fd,'<',$fileName or die "open file $fileName error!"; 11     #文件格式如 : 12  # girl: lily lucy may hallen # 关键字:名字(使用空格分开) 
13     while( <$fd> ) 14  { 15         #这种方法先将属性项保存在$1中去掉,再将剩下的用splite分隔得到数组,非常精妙
16         next unless s/^(.+?):\s*// ; 17         $$arr_hash_ref{$1} = [ split ]; 18  } 19 } 20 
21 sub main 22 { 23     my $fileName = "test.txt"; 24     my %array_hash ; 25     spliteName($fileName,\%array_hash); 26     print_arr_hash(\%array_hash); 27 } 28 main(); 29 
30 sub print_arr_hash 31 { 32     my $arr_hash_ref = shift ; 33     for my $key (keys %$arr_hash_ref) 34  { 35         #注意这里是打印整个数组, 所以记得加上 @ 
36         print "$key:@{$$arr_hash_ref{$key}} \n"; 37  } 38 }

猜你在找的Perl相关文章