perl的子程序sub返回值不改变的解决方法
发布时间:2020-12-16 00:21:17 所属栏目:大数据 来源:网络整理
导读:用子程序去掉从文件读取的每行的首尾空格,sub函数print的值已经没有空格了,但是返回值打印出来还是有空格。代码如下: while(FH) { trim($_); print "$_n"; } sub trim ? ? ? ? my $str=shift; ? ? ? ? $str=~s/^s*//g; ? ? ? ? $str=~s/s*$//g; ? ? ?
用子程序去掉从文件读取的每行的首尾空格,sub函数print的值已经没有空格了,但是返回值打印出来还是有空格。代码如下:
while(<FH>) { &trim($_); print "$_n"; } sub trim ? ? ? ? my $str=shift; ? ? ? ? $str=~s/^s*//g; ? ? ? ? $str=~s/s*$//g; ? ? ? ? print "$strn"; ? ? ? ? return $str; 乍一看,程序没有一点问题。可是输出结果总不能去掉空格。 解决方法:$_=&trim($_); 搞定了!原因是: trim($_)??return 了却没有人接收。 在perl中子程序的返回结果总需要有人来接收的! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- perl – 如何将完整路径分成目录和文件名?
- delphi – Gethomepath不能在iOS 5/OSxLion上运行
- perl – 是否有一个vim插件使得Moose属性出现在T
- 快速掌握Lua 5.3 —— 数据结构
- Grails findAll有sort,order,max和offset吗?
- 【文文殿下】CF1175F The Number of Subpermutat
- Golang slice切片操作之切片的追加、删除、插入等
- ThinkPHP like模糊查询,like多匹配查询,between查
- 【Reverse】Tensorflow中屏蔽Padding处理变长序列
- Perl 学习记录3 基本构件的堆栈:列表与数组
热点阅读