本文和大家重点讨论一下Perl流程控制语句的概念,在学习Perl语言的过程中,Perl流程控制语句是非常实用的知识必须要掌握,希望通过本文的学习你对Perl流程控制语句有初步的了解。

Perl流程控制语句
条件选择语句1
if(条件表达式){
 语句块1;
 }else{
 语句块2;
 }
条件选择语句2
unless(判别运算式)
 {
 语句2;
 }else{
 语句1;
 }
if条件语句嵌套
if(条件表达式1)
 {
 语句1
 }elsif(条件表达式2){
 语句2
 }elsif(条件表达式3){
 语句3
 }else{
 语句4
 }
例:
- #!/usr/bin/Perl-w
 - print"input?\n";
 - $name=
 ; - chop($name);
 - if($nameeq"bo")
 - {
 - print"mynameis$name\n";
 - }elsif($nameeq"ji"){
 - print"mylastnameis$name\n";
 - }elsif($nameeq"liu"){
 - print"myfirstnameis$name\n";
 - }else{
 - print"unkonw------!!!!!!!!!!\n";
 - }
 
灵活使用Perl
条件表达式&&语句块
这的确是个逻辑与操作,若条件表达式为“真”,要根据后面语句块的执行结果才能判断整个逻辑与操作的结果,这样就会执行后面的语句;而当条件表达式为“假”,则整个表达式为“假”,不用考虑
 后面语句块的值。所以为假时的语句块不被执行。
open(FH,">filename")||die"打开文件出错。";
 这时整个表达式的含义是:当前面的语句执行结果是“真”时,就不执行后面的语句了;当前面的语句执行出错,结果是“假”时,就执行后面的语句。这里die的含义是输出出错信息。
if语句的简写
- [root@test-linuxtmp]#catifp.pl
 - #!/usr/bin/Perl-w
 - $i=1;
 - #if($i<10){
 - #
 - #print"$i<10\n";
 - #
 - #}
 - print"$i<10\n"if($i<10);
 
Perl流程控制语句之for循环
for(初始语句,条件判断语句,循环变量步进速度){
 循环体语句
 }
- [root@test-linuxtmp]#catpfor.pl
 - #!/usr/bin/Perl-w
 - for($i=1;$i<10;$i++){
 - print"$i\n";
 - }
 
#p#
Perl流程控制语句之while/until循环
 while(条件表达式){
 循环体语句
 }
- [root@test-linuxtmp]#catpwhile.pl
 - #!/usr/bin/Perl-w
 - $i=1;
 - while($i<10){
 - print"$i\n";
 - $i++;
 - }
 - 当条件表达式为“假”时,执行循环体语句
 - until(条件表达式){
 - 循环体语句
 - }
 - #!/usr/bin/Perl-w
 - $i=0;
 - until($i>10){
 - print"$i\n";
 - $i++
 - }
 
Perl流程控制语句之do{}while/until循环
do{
}while/until(条件表达式);
 do{}while的语意是执行循环体,直到条件表达式为“假”;而do{}until的语意是执行循环体,直到表达条件式为“真”。
Perl流程控制语句之foreach循环
foreach标量(标量)
 {
 循环体语句
 }
- [root@test-linuxtmp]#catforeach.pl
 - #!/usr/bin/Perl-w
 - @array=(1,2,3,4,5);
 - foreach$i(@array){
 - print"$i\n";
 - }
 - #!/usr/bin/Perl-w#######有一个默认变量$_
 - @array=(1,2,3,4,5);
 - foreach(@array){
 - print;
 - }
 - #!/usr/bin/Perl-w
 - @array=(1,2,3,4,5);
 - foreach$_(@array){
 - print$_;
 - }
 
循环体控制next和last等完成。
- [root@test-linuxtmp]#catnext.pl
 - #!/usr/bin/Perl-w
 - @array=("a","b","c","d","e","f");
 - foreach(@array){
 - if($_ge"c"){
 - last;##跳出循环
 - }
 - for($i=1;$i<7;$i++){
 - if(($i%2)==1){
 - next;##进行下一次循环
 - }
 - print"$_"x"$i";
 - print"\n";
 - }
 - }
 - print"\nDone!\n";
 
注:当外层循环变量大于等于“c”时,就跳出外层循环,代码执行完毕:内层循环中,当循环变量是奇数时,就不执行打印操作,而执行下一次循环。这样就是下面的结果。
[root@test-linuxtmp]#./next.pl
 aa
 aaaa
 aaaaaa
 bb
 bbbb
 bbbbbb
 Done!
                网站标题:Perl流程控制语句用法指南
                
                网页URL:http://www.csdahua.cn/qtweb/news26/459126.html
            
网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网