您好,登錄后才能下訂單哦!
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=<STDIN>; 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"; }
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中如何使用流程控制語句的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。