Perl 條件語句是通過一條或多條語句的執行結果(True或者False)來決定執行的代碼塊。
條件判斷常用:
True #布爾值
not True #布爾值
! True #布爾值
False #布爾值
數字 0、字符串 '0' 、 "" 、空數組list () 和 undef 為 false
> ; >= ; < ; <= ; ==;!=;<=>比較,返回0或者 1或者 -1; #數值比較大小 == #判斷是否相等; != #判斷是否不相等;
bt ; be ; lt ; le ; eq ; ne ; cmp比較,返回0或者 1或者 -1; #字符串比較大小
=~ #匹配
&& #且
|| #或者
Perl 提供了下拉的條件語句:
語句 | 描述 |
---|---|
一個 if 語句 由一個布爾表達式后跟一個或多個語句組成。 | |
一個 if 語句 后可跟一個可選的 else 語句,else 語句在布爾表達式為假時執行。 | |
您可以在一個 if 語句后可跟一個可選的 elsif 語句,然后再跟另一個 else 語句。 | |
一個 unless 語句 由一個布爾表達式后跟一個或多個語句組成。 | |
一個 unless 語句 后可跟一個可選的 else 語句。 | |
一個 unless 語句 后可跟一個可選的 elsif 語句,然后再跟另一個 else 語句。 | |
在最新版本的 Perl 中,我們可以使用 switch 語句。它根據不同的值執行對應的代碼塊。 |
if(條件判斷){
}
if(條件判斷){
}else{
}
if(條件判斷){
}elsif(條件判斷){
}elsif(條件判斷){
}else{
}
三元運算符 ? :
我們可以使用 條件運算 ? : 來簡化 if...else 語句的操作。通常格式為:
Exp1 ? Exp2 : Exp3;
如果 Exp1 表達式為 true ,則返回 Exp2 表達式計算結果,否則返回 Exp3。
實例如下所示:
#!/usr/local/bin/perl
$name = "菜鳥教程";
$favorite = 10;
$status = ($favorite > 60 )? "熱門網站" : "不是熱門網站";
print "$name - $status\n";
執行以上程序,輸出結果為:
菜鳥教程 - 不是熱門網站