`
carmark
  • 浏览: 161333 次
  • 性别: Icon_minigender_1
  • 来自: 大连->北京
社区版块
存档分类
最新评论

【Perl】茴字的多种写法

    博客分类:
  • Perl
阅读更多

大概的思路是从CU上面来的,转过来,再加上一些注释,仅供娱乐~~~

首先是要解决的问题:将
 12
 23
 34
 45
 56
 67

编程下面的形式:
1223
3445
5667

使用perl的一行代码来做:
下面就是第一种做法:
   perl -pe 'chomp if $. % 2' file   #如果行数是奇数的话就去掉每行最后的换行
                                     #chomp的作用去掉每行的\n
                                     #$.为Perl的内置变量,当前的行号

但是Randal(Perl hacker,教育家)给出这个方法:
  perl -pe 'chomp; $_ .= <>' file    #这个比上个的好处就是减少了模的操作
                                     #读取一行后,再通过<>符号继续读取,连接
                                     #到原字符串上面
                                     #$_为内置变量,当前操作的变量内容

后来John W.(another Perl hacker)秀了一个更smart的方法:
 perl -lpe '$\=--$|?$,:$/' file      


以下来自CU上Perl版主兰花仙子的评论:
“代码写到这样就是神仙了~~ 反正偶一时半会没看明白~~
我也读过大小骆驼呀、高级编程啥的也读过一堆呀,怎么就想不到呢?
达到这一级,除了经验外,更多的是靠冰雪玲珑心了~~

    --对,一定要有一颗玲珑的慧心~~

看看“Just another Perl hacker”有多少种写法就知道了。”

John写的代码确实是厉害,各种内置变量。

先介绍一下基本的内置变量:
$.                  记录当前处理到第几行了
$/                  改变系统默认的换行符
$\                  改变print输出后的添加符号
$"                  哈西输出符号
$,                  print @array 元素间的连接符

对于上面种还有一个变量是$|,这个变量的初始值为0, --$|后就变成了1,接着在执行
的话就变成了0,如此功能。

现在大概的意思就出来了,-l的选项的作用就是每行的读取出来的意思。

高手确实是高手呀,真是让人望其项背,自叹不如....唯有努力学习呀。

1
1
分享到:
评论

相关推荐

    Perl-5.10.0版本

    Perl-5.10.0版本,Perl-5.10.0版本,Perl-5.10.0版本,Perl-5.10.0版本,Perl-5.10.0版本,Perl-5.10.0版本,Perl-5.10.0版本,Perl-5.10.0版本,Perl-5.10.0版本,Perl-5.10.0版本,Perl-5.10.0版本,Perl-5.10.0...

    PERL编程速成教程(文字中文版)

    PERL编程速成教程是一本全面介绍Perl编程语言的中文资源,适合初学者和有一定经验的程序员提升技能。教程分为三个部分,涵盖了Perl的基础、高级特性以及如何在Web开发中运用Perl来创建CGI(Common Gateway Interface...

    Perl语言学习.pdf

    * Perl语言的字符串处理:Perl语言的字符串可以包含各种字符的任意组合,可以通过字符串连接、复制等运算符来处理字符串。 * Perl语言的正则表达式:Perl语言支持正则表达式,可以对字符串进行复杂的匹配和处理。 ...

    strawberry-perl-5.32.1.1-64bit perl 解释器

    在Strawberry Perl中,这个解释器已经预装了各种模块和库,方便开发者进行各种操作。 描述中的"perl 修改后解释器 加速下载速度"可能是指该版本的Perl解释器经过优化,可能包含了一些定制的改进,例如提高了网络I/O...

    Perl.TK (TK for perl)

    3. **布局管理**:Perl.TK支持多种布局管理器,如Pack、Grid和Place,它们用于控制控件在窗口中的位置和大小。通过合理使用布局管理器,可以创建出美观且适应不同屏幕尺寸的界面。 4. **面向对象编程**:Perl.TK...

    Perl开发环境.zip

    总之,"Perl开发环境.zip" 提供了一个便捷的方式在Windows环境下搭建Perl编程环境,结合Perl丰富的功能和强大的CPAN支持,无论你是初次接触还是经验丰富的Perl开发者,都能快速投入工作,解决各种编程挑战。

    Perl 6 技术参考手册_PERL技术参考_Perl_

    Perl 6 支持多种数据库接口,如 DBI(Database Interface)。你可以使用 `connect` 函数建立数据库连接,然后通过 SQL 查询语句执行数据操作。`prepare` 函数用于预编译 SQL 语句,`execute` 执行预编译的语句,`...

    windows Strawberry Perl 5.32最新版本

    windows Strawberry Perl 5.32最新版本 ,适合调试 perl windows Strawberry Perl 5.32最新版本 ,适合调试 perl windows Strawberry Perl 5.32最新版本 ,适合调试 perl windows Strawberry Perl 5.32最新版本 ...

    草莓perl安装包下载

    草莓perl安装包下载,新版本 Strawberry Perl是用于MS Windows的perl环境,其中包含运行和开发perl应用程序所需的一切。 它被设计为尽可能接近UNIX系统上的perl环境。 它包括perl二进制文件,编译器(gcc)+相关...

    perl工具 开发工具

    总之,Perl在Windows环境中的开发不仅限于基础的文本处理,还包括了各种高级功能,如数据库操作、网络通信、系统管理等。通过选择合适的开发工具和模块,开发者可以充分利用Perl的强大能力,实现高效的编程和便捷的...

    Perl入门书籍——Perl 24小时

    ### Perl入门书籍——《Perl 24小时》关键知识点概览 #### 1....无论是新手还是有经验的程序员,都可以通过《Perl 24小时》这本入门书籍,快速提升Perl编程能力,探索其在各种实际项目中的应用潜力。

    perl下的Pdk模块编译perl程序的方法

    Pdk 模块就是用于此目的的强大工具之一,它支持多种平台(包括 Windows、Linux 和 Solaris)并且兼容不同版本的 Perl 解释器。本文将详细介绍如何使用 Pdk 模块来编译 Perl 程序。 #### 二、环境准备 1. **Perl ...

    Perl语言编程.pdf

    * 高级语言:Perl语言是一种高级语言,它支持面向对象编程、函数编程和过程编程等多种编程范式。 * 通用语言:Perl语言可以应用于多种领域,包括文本处理、网络编程、数据库交互、系统管理员等。 * 灵活语言:Perl...

    ActivePerl-5.14.0.1400

    标题“ActivePerl-5.14.0.1400”...总的来说,ActivePerl是Perl在Windows平台上的一个强大工具,提供了便捷的安装、丰富的模块支持以及与系统环境的良好整合,使得开发者能够充分利用Perl的强大功能进行各种开发任务。

    Perl编程思想 Perl编程思想

    Perl编程思想是编程领域中的一种独特视角,它涵盖了Perl语言的核心理念、设计哲学以及实际应用中的各种技巧。Perl,全称“Practical Extraction and Reporting Language”,最初由Larry Wall设计,旨在处理文本处理...

    perl-5.28.zip

    这个压缩包“perl-5.28.zip”包含了适用于多种平台的Perl 5.28版本,包括Linux、Windows和Mac操作系统,以及源代码,使得用户可以在各种环境下使用和定制Perl。 对于Linux平台,Perl是许多系统管理任务和自动化脚本...

    libperl.so openssh、openssl、perl.zip

    在IT领域,libperl.so是一个重要的动态链接库文件,它属于Perl编程语言。Perl是一种功能强大的脚本语言,常用于文本处理、系统管理任务以及网络编程。libperl.so是Perl解释器的核心组件,包含了Perl运行时所需的许多...

    strawberry-perl-5资源下载

    它的语法灵活,允许程序员以多种方式实现同一功能,这有时被称为"Perl的丑陋",但也是其强大之处,因为程序员可以根据个人喜好和任务需求选择最合适的写法。 Strawberry Perl 5 的特点包括: 1. 全面性:它包含Perl...

    perl_Perl_

    标题中的"perl_Perl_"可能是指一系列关于Perl编程的示例或教程,而描述则提到“读取源文件,将字母大小写转换,最后输出一个新文件”,这是Perl处理文本时常见的任务。 在Perl中,读取文件通常使用内置的文件句柄和...

    perl语言编程和perl语言入门

    Perl语言的一个独特之处是其“there is more than one way to do it”(TIMTOWTDI)的原则,这意味着有多种方法可以实现相同的功能。这既赋予了Perl灵活性,也可能让初学者感到困惑,因此在学习过程中理解各种方法的...

Global site tag (gtag.js) - Google Analytics