| 導購 | 订阅 | 在线投稿
分享
 
 
 

单行代码的Perl程序

2008-05-18 22:11:26  編輯來源:互聯網  简体版  手機版  評論  字體: ||
 
 
  精简的代码,虽然可读性不好,但是绝对高效,发挥才思。

  一些不同凡响的Unix狂的一个业余爱好就是研究怎样把程序压缩到单行来完成。那些精通Perl 的程序员能很好地做到这一点。例如一个测试素数的程序:

  perl -le 'print "PRIME" if (1 x shift) !~ /^(11+)\1+$/' 19

  Abigail@fnx.com 贡献了这段代码放在Perl Journal 的

  http://www.itknowledge.com/tpj/one-liners01.html. 你可以把19替换为你想要的最后一个数字。

  Perl 的功能不仅强大而且简洁。 然而,即便如此, 很少的Perl 程序员的代码有如此紧凑。许多人乐于写比较松散并且有较高可读性的代码。

  其实,单行代码不仅仅光是证明你是一位紧凑代码编写人员,而且它是十分有用的。单行的代码可以在命令行处理得更快更灵活。下面是一个十分方便的替换命睿?

  perl -p -i -e 's/this/that/g' filename

  它把指定文件中的字符串 *this* 替换为 *that*。

  你可以把这条命令放入howto 文件,这条命令很好记,参数为"pie",就是馅饼了,而替换命令就和sed 的一样。

  参数含义:

  p 打印

  i 当场编辑

  e 执行命令

  下面这条命令:

  perl -p -i -e 's/'

  .. 把文件的回车去掉,把DOS 格式的文件转化为Unix 格式。

  和下面这条命令一样。

  tr -d "\015"

  另外一个“单行代码”的用处是测试你对语言的理解。为了写一条十分简洁紧凑的代码,你或许不得不查看一些你不是常用的语法。
 
 
 
  精简的代码,虽然可读性不好,但是绝对高效,发挥才思。   一些不同凡响的Unix狂的一个业余爱好就是研究怎样把程序压缩到单行来完成。那些精通Perl 的程序员能很好地做到这一点。例如一个测试素数的程序:   perl -le 'print "PRIME" if (1 x shift) !~ /^(11+)\1+$/' 19   Abigail@fnx.com 贡献了这段代码放在Perl Journal 的   http://www.itknowledge.com/tpj/one-liners01.html. 你可以把19替换为你想要的最后一个数字。   Perl 的功能不仅强大而且简洁。 然而,即便如此, 很少的Perl 程序员的代码有如此紧凑。许多人乐于写比较松散并且有较高可读性的代码。   其实,单行代码不仅仅光是证明你是一位紧凑代码编写人员,而且它是十分有用的。单行的代码可以在命令行处理得更快更灵活。下面是一个十分方便的替换命睿?   perl -p -i -e 's/this/that/g' filename   它把指定文件中的字符串 *this* 替换为 *that*。   你可以把这条命令放入howto 文件,这条命令很好记,参数为"pie",就是馅饼了,而替换命令就和sed 的一样。   参数含义:   p 打印   i 当场编辑   e 执行命令   下面这条命令:   perl -p -i -e 's/'   .. 把文件的回车去掉,把DOS 格式的文件转化为Unix 格式。   和下面这条命令一样。   tr -d "\015"   另外一个“单行代码”的用处是测试你对语言的理解。为了写一条十分简洁紧凑的代码,你或许不得不查看一些你不是常用的语法。
󰈣󰈤
日版宠物情人插曲《Winding Road》歌词

日版宠物情人2017的插曲,很带节奏感,日语的,女生唱的。 最后听见是在第8集的时候女主手割伤了,然后男主用嘴帮她吸了一下,插曲就出来了。 歌手:Def...

兄弟共妻,我成了他们夜里的美食

老钟家的两个儿子很特别,就是跟其他的人不太一样,魔一般的执着。兄弟俩都到了要结婚的年龄了,不管自家老爹怎么磨破嘴皮子,兄弟俩说不娶就不娶,老父母为兄弟两操碎了心...

 
 
>>返回首頁<<
 
 
 
 
 熱帖排行
 
 
王朝网络微信公众号
微信扫码关注本站公众号 wangchaonetcn
 
  免责声明:本文仅代表作者个人观点,与王朝网络无关。王朝网络登载此文出于传递更多信息之目的,并不意味著赞同其观点或证实其描述,其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有