第十章 其他控制结构
1. unless类似if,但是在条件为假时执行
unless( $fred =~ /^[A-Z_]/im) { print "ok \n;"} else {}
2. until类似while,但只要在条件为假时循环
until($j > 200 ) { $j *= 2;}
3. 条件修饰符
print "$n is a negative number.\n" if $n < 0;
$i *= 2 until $i > $j;
print " ",($n += 2) while $n < 10;
&greet($_) foreach @person ;
4. if () {} elsif() {} else {}
5. for ( ; ; ) {}
for (1..20) {print "$_\n";} #和foreach一样
6. 循环控制
last 和C语言break一样;
next 和C语言的continue一样;
redo 无条件跳到本次循环开始处,重新执行本次循环;
while(<STDIN>){
# redo会跳到这里
if (/__END__/) {
last;
}elsif(/^$/) {
$n++;
next;
}else {
redo;
}
}
7. 三目运算符 ?:
8. 逻辑运算符(&& 、||)与短路操作符
$last_name = $last_name{$someone} || '(No last name)';
($m > 10) || print "why is it not greater?\n";
第十一章 Perl模块
1. 查看帮助文档
perldoc DBI
2. 在线安装模块
cpan Text::CSV
3. 引入模块
use DBI;
use File::Basename;
$name = "/usr/local/bin/perl";
$basename = basename $name;
4. 引入模块中的部分函数
use File::Basename qw/ basename /;
5. 完全不引入函数,就可以使用自己的同名函数
use File::Basename qw//;
use File::Basename qw();