博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Perl分割字符串的一个精妙的写法
阅读量:6897 次
发布时间:2019-06-27

本文共 841 字,大约阅读时间需要 2 分钟。

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 main22 {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_hash31 {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 }

 

转载地址:http://yoddl.baihongyu.com/

你可能感兴趣的文章
SQL Server 2008数据库的一些基本概念
查看>>
在ASP.NET中重写URL
查看>>
职业化
查看>>
linux进程调度策略(SCHED_OTHER,SCHED_FIFO,SCHED_RR)
查看>>
栈,队列,双端队列
查看>>
提升WordPress站点速度的八个建议
查看>>
love2d教程32--碎图打包器texturepacker
查看>>
POJ1273:Drainage Ditches(最大流入门 EK,dinic算法)
查看>>
[Linux] 安装JBoss - CentOS
查看>>
Neutron 理解 (3): Open vSwitch + GRE/VxLAN 组网 [Netruon Open vSwitch + GRE/VxLAN Virutal Network]...
查看>>
Linq专题之提高编码效率—— 第三篇 你需要知道的枚举类
查看>>
流域水文模拟
查看>>
Linux 中 SVN 重启关闭
查看>>
Vue系列:在vux的popup组件中使用百度地图遇到显示不全的问题
查看>>
音频特征提取——librosa工具包使用
查看>>
基于八叉树的区域增长点云分割算法【转】
查看>>
SERVER2012 FTP服务器和客户端配置
查看>>
C++11 带来的新特性 (3)—— 关键字noexcept
查看>>
《iBoard 是什么》之简介
查看>>
中间代码生成器-5-编译原理
查看>>