区分 @_ 与 $_; $_ 表示数组@_中当前被遍历到的元素.遍历整个@_数组输入与输出标准输入chomp($line =)
调用参数
@ARGV
printf
可以转换格式
%g %d %s %f
文件句柄
open
close
say 自动换行的文件句柄
二 控制结构(Control Statements)
1 选择 if结构
Perl的条件控制叙述和C语言很像,让使用者很快就能掌握它。不过Perl比C语言又另外多了些实用的语法
# Expression 就是条件叙述式,Perl和C一样没有定义布尔数据型态(Boolean datatype),
# 因此 0 是false、非0 是ture。另外要注意字符串运算子和数值运算子要分清楚哦。
# Code Segment 就是用大括号括起来的一堆指令,也就是一个Block。
if (Expression) {Code Segment}
if (Expression) {Code Segment} else {Code Segment}
if (Expression) {Code Segment} elsif (Expression) {Code Segment} else {CodeSegment}
# elsif 就是 else if
# 如果指令(statement)只有一项,可以使用倒装句法,看起来比较简洁。
statement if (Expression);
# unless 就是if not
statement unless (Expression);例:
print "HELLO!\n" if ($name eq "friend");
$x-=10 if ($x == 100);
2循环结构
Perl的循环控制叙述也和C语言很像,当然,照例Perl也另外多了些实用的语法:
# 注意:纯量变数前面要加个 $ 字号
for($i=0; $i<=10; $i++) {Code Segment}
# foreach 是承袭UNIX的shell script来的,
# 第一个自变量是纯量变数,第二个自变量要用括号括起来,里面是一个纯量数组,
# 顾名思义它就是把数组中的每个元素依序传给第一个自变量,直到全部传完。
# 它和 for($i=0; $i<=$#array; $i++) 用法虽然不同,但目的都是要取出数组的每个元素。
foreach $i (@array) {Code Segment}
# 其实在Perl中,for和foreach是可以混着用的,就看个的人习惯了。
# 下面这行就等于上面第一个叙述,不过简洁多了,大家可以试着用用看。
for $i (0..10) {Code Segment}
# while控制循环和后置循环。
while($i<=10) {Code Segment}
do {Code Segment} while(Expression);
# Perl也有和C语言的break和continue一样的指令,Perl叫它做 last 和 next .
# last是跳出现在所在的循环,next则是跳过下面的指令直接执行下一次的循环。
while(chomp($i=)) {
next if ($i == 5);
last unless ($i > 10);
}