perl的if語句和c++的if語句幾乎一樣,但是perl支援一種比較特殊的unless條件語句,和if語句的邏輯處理正好相反,if是如果條件滿足就執行body,unless是條件buma不滿足就執行body。unless語句後面也可以跟可選的else語句,也可以後跟elsif再加乙個else語句。
此外,perl也支援c++風格的三目運算子:exp1 ? exp2 : exp3;
#!/usr/bin/perl
$bvar = "true";
unless("$bvar" != "true") else
$result = (10 > 20)?"true":"false";
print "$result\n";
[root@izuf682lz6444cynn96up0z basic]# ./control.pl
bvar equal true
false
注意:數字0、字串'0'、""、空list()、和undef為false,其他value均為true。
perl除了支援c++風格的while迴圈、for迴圈和do...while迴圈(包括continue語句),還支援until迴圈和foreach迴圈。
until迴圈重複執行語句,直到給定的條件為true。迴圈主題執行之前會先測試條件。
eg:
#!/usr/bin/perl
$a = 0;
until($a == 10)
[root@izuf682lz6444cynn96up0z basic]# ./until.pl 02
468
foreach迴圈用於迭代列表或者集合變數的值。
a b c d a b c dlast語句:退出迴圈語句塊,從而結束迴圈,類似於c++中的break語句。
continue語句。
redo語句:redo語句直接轉到迴圈體的第一行開始重複執行本次迴圈,redo語句之後的語句不再執行,continue語句塊也不再執行。
goto語句。
Perl 中流程控制語句
一 迴圈語句 1.for 語句 例子 計算從1到10,所有正整數的和.sum 0 for i 1 i 10 i print sum n 2.foreach語句 例子1 計算從1.100,所有正整數的和.sum 0 foreach 1.100 print sum n 例子2 計算從1.5,所有正整數的...
Perl 修改迴圈控制流的語句
標記修飾符 標記有自己的命名空間,和標量變數 列表 hash 函式一樣,不過由於它沒有特別的前置符號,所以在命名上有一些限制 如盡量不要和其他的命名衝突,標記名稱最好由大寫字母和數字構成,這樣保證不會和任何保留字衝突,而且看起來也比較明顯。選定標記之後,只要把它放在需要的語句前面,並加上冒號即可,下...
Perl 迴圈語句
while迴圈語法 while some expression 程式執行到while語句時,首先檢查控制語句 some expression 若其值為真,就會執行迴圈體一次,如此反覆不停的執行,知道控制語句的值為假,則停止while迴圈 示例 usr bin perl w number 10 whi...