免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1792 | 回复: 2
打印 上一主题 下一主题

单行代码的Perl 程序 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-01-13 22:50 |只看该作者 |倒序浏览
最近研究perl的单行代码,命令行使用,发现perl真是强大,网上讲到perl的单行代码举例最多的是Abigail@fnx.com 提供的:
perl -le 'print "RIME" if (1 x shift) !~ /^(11+)\1+$/' 19
但是有点疑问就是为什么1 x shift是打印出来19个连续的1呢。其他都还好明白。
我对这段代码改些成
perl -le 'print "prime" if($ARGV[0]%2)' 19
我觉得要更紧凑更易懂一点。
想不通Abigail@fnx.com当时为什么那么写。

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
2 [报告]
发表于 2005-01-13 23:46 |只看该作者

单行代码的Perl 程序

shift 可以取得 19,
1x19 中的 x 是埃克思,而不是乘号。x 表示字符串重复。

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
3 [报告]
发表于 2005-01-14 12:50 |只看该作者

单行代码的Perl 程序

perldoc perlrun有很多這類的可以看...
perl -le 'print "prime" if($ARGV[0]%2)' 19
這個不一定是prime吧??
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP