大概的思路是从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的选项的作用就是每行的读取出来的意思。
高手确实是高手呀,真是让人望其项背,自叹不如....唯有努力学习呀。
分享到:
相关推荐
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的基础、高级特性以及如何在Web开发中运用Perl来创建CGI(Common Gateway Interface...
* Perl语言的字符串处理:Perl语言的字符串可以包含各种字符的任意组合,可以通过字符串连接、复制等运算符来处理字符串。 * Perl语言的正则表达式:Perl语言支持正则表达式,可以对字符串进行复杂的匹配和处理。 ...
在Strawberry Perl中,这个解释器已经预装了各种模块和库,方便开发者进行各种操作。 描述中的"perl 修改后解释器 加速下载速度"可能是指该版本的Perl解释器经过优化,可能包含了一些定制的改进,例如提高了网络I/O...
3. **布局管理**:Perl.TK支持多种布局管理器,如Pack、Grid和Place,它们用于控制控件在窗口中的位置和大小。通过合理使用布局管理器,可以创建出美观且适应不同屏幕尺寸的界面。 4. **面向对象编程**:Perl.TK...
总之,"Perl开发环境.zip" 提供了一个便捷的方式在Windows环境下搭建Perl编程环境,结合Perl丰富的功能和强大的CPAN支持,无论你是初次接触还是经验丰富的Perl开发者,都能快速投入工作,解决各种编程挑战。
Perl 6 支持多种数据库接口,如 DBI(Database Interface)。你可以使用 `connect` 函数建立数据库连接,然后通过 SQL 查询语句执行数据操作。`prepare` 函数用于预编译 SQL 语句,`execute` 执行预编译的语句,`...
windows Strawberry Perl 5.32最新版本 ,适合调试 perl windows Strawberry Perl 5.32最新版本 ,适合调试 perl windows Strawberry Perl 5.32最新版本 ,适合调试 perl windows Strawberry Perl 5.32最新版本 ...
草莓perl安装包下载,新版本 Strawberry Perl是用于MS Windows的perl环境,其中包含运行和开发perl应用程序所需的一切。 它被设计为尽可能接近UNIX系统上的perl环境。 它包括perl二进制文件,编译器(gcc)+相关...
总之,Perl在Windows环境中的开发不仅限于基础的文本处理,还包括了各种高级功能,如数据库操作、网络通信、系统管理等。通过选择合适的开发工具和模块,开发者可以充分利用Perl的强大能力,实现高效的编程和便捷的...
### Perl入门书籍——《Perl 24小时》关键知识点概览 #### 1....无论是新手还是有经验的程序员,都可以通过《Perl 24小时》这本入门书籍,快速提升Perl编程能力,探索其在各种实际项目中的应用潜力。
Pdk 模块就是用于此目的的强大工具之一,它支持多种平台(包括 Windows、Linux 和 Solaris)并且兼容不同版本的 Perl 解释器。本文将详细介绍如何使用 Pdk 模块来编译 Perl 程序。 #### 二、环境准备 1. **Perl ...
* 高级语言:Perl语言是一种高级语言,它支持面向对象编程、函数编程和过程编程等多种编程范式。 * 通用语言:Perl语言可以应用于多种领域,包括文本处理、网络编程、数据库交互、系统管理员等。 * 灵活语言:Perl...
标题“ActivePerl-5.14.0.1400”...总的来说,ActivePerl是Perl在Windows平台上的一个强大工具,提供了便捷的安装、丰富的模块支持以及与系统环境的良好整合,使得开发者能够充分利用Perl的强大功能进行各种开发任务。
Perl编程思想是编程领域中的一种独特视角,它涵盖了Perl语言的核心理念、设计哲学以及实际应用中的各种技巧。Perl,全称“Practical Extraction and Reporting Language”,最初由Larry Wall设计,旨在处理文本处理...
这个压缩包“perl-5.28.zip”包含了适用于多种平台的Perl 5.28版本,包括Linux、Windows和Mac操作系统,以及源代码,使得用户可以在各种环境下使用和定制Perl。 对于Linux平台,Perl是许多系统管理任务和自动化脚本...
在IT领域,libperl.so是一个重要的动态链接库文件,它属于Perl编程语言。Perl是一种功能强大的脚本语言,常用于文本处理、系统管理任务以及网络编程。libperl.so是Perl解释器的核心组件,包含了Perl运行时所需的许多...
它的语法灵活,允许程序员以多种方式实现同一功能,这有时被称为"Perl的丑陋",但也是其强大之处,因为程序员可以根据个人喜好和任务需求选择最合适的写法。 Strawberry Perl 5 的特点包括: 1. 全面性:它包含Perl...
标题中的"perl_Perl_"可能是指一系列关于Perl编程的示例或教程,而描述则提到“读取源文件,将字母大小写转换,最后输出一个新文件”,这是Perl处理文本时常见的任务。 在Perl中,读取文件通常使用内置的文件句柄和...
Perl语言的一个独特之处是其“there is more than one way to do it”(TIMTOWTDI)的原则,这意味着有多种方法可以实现相同的功能。这既赋予了Perl灵活性,也可能让初学者感到困惑,因此在学习过程中理解各种方法的...