Perl操作符用法大全
本文和大家重點討論一下Perl操作符的概念,主要有算術運算符,整數(shù)比較運算符,字符串比較運算符等內容,相信通過本文的的介紹你對Perl操作符的概念有全面的認識。
Perl操作符學習筆記
一.算術Perl操作符
+(加)-(減)*(乘)/(除)**(乘冪)%(取模)-(單目負)
(1)乘冪的基數(shù)不能為負,如(-5)**2.5;
(2)乘冪結果不能超出計算機表示的限制,如10**999999;
(3)取余的操作數(shù)如不是整數(shù),四舍五入成整數(shù)后運算,運算符右側不能為零.
(4)單目負可用于變量:-$y;
二.整數(shù)比較Perl操作符
<(小于)
>(大于)
==(等于)
<=(小于等于)
>=(大于等于)
!=(不等于)
<=>(比較,如果相等,返回0;如果第一個大,返回1;如果第二個大,返回-1)
三.字符串比較Perl操作符
lt(小于)
gt(大于)
eq(等于)
le(小于等于)
ge(大于等于)
ne(不等于)
cmp(比較,返回1,0或-1)
四.邏輯Perl操作符
邏輯或:$a||$b或$aor$b
邏輯與:$a&&$b或$aand$b
邏輯非:!$a或not$a
邏輯異或:$axor$b
五.位Perl操作符
位與:&
位或:|
位非:~
位異或:^
左移:$x<<1
右移:$x>>2
注:不要將&用于負整數(shù),因為Perl將會把它們轉化為無符號數(shù).
六.賦值Perl操作符
=直接賦值
+=加等于
-=減等于
*=剩等于
/=除等于
%=模等于
**=冪等于
&=
|=
^=
=可在一個賦值語句中出現(xiàn)多次,如:
$value1=$value2="astring";
=作為子表達式
($a=$b)+=3;
等價于
$a=$b;$a+=3;
但建議不要使用這種方式。
七.自增自減Perl操作符
++,--(與C++中的用法相同)
不要在變量兩邊都使用此種Perl操作符:++$var--.
不要在變量自增/減后在同一表達式中再次使用:$var2=$var1+++$var1;
在Perl中++可用于字符串,但當結尾字符為'z'、'Z'、'9'時進位.例如:
- $stringvar="abc";
- $stringvar++;
- 此時$stringvar="abd".
- $stringvar="abz";
- $stringvar++;
- 此時$stringvar="aca".
不要使用--,Perl將先將字符串轉換為數(shù)字再進行自減
$stringvar="abc";
$stringvar--;
此時$stringvar=-1.
如果字符串中含有非字母且非數(shù)字的字符,或數(shù)字位于字母中,則經(jīng)過++運算前值轉換為數(shù)字零,因此結果為1.例如:
- $stringvar="ab*c";
- $stringvar++;
- $stringvar="ab5c";
- $stringvar++;
八.字符串聯(lián)結和重復Perl操作符
聯(lián)接:.
重復:x
聯(lián)接且賦值(類似+=):.=
例:
$newstring="potato"."head";
$newstring="t"x5;
$a="be";
$a.="witched";
此時$a="bewitched"
九.逗號Perl操作符
其前面的表達式先進行運算,例如:
$var1+=1,$var2=$var1;
等價于
$var1+=1;
$var2=$var1;
使用此Perl操作符的唯一理由是提高程序的可讀性,將關系密切的兩個表達式結合在一起.
十.條件Perl操作符
與C中類似,條件?值1:值2,當條件為真時取值1,為假時取值2,例如:
$result=$var==0?14:7;
Perl5中,還可以在賦值式左邊使用條件Perl操作符來選擇被賦值的變量,例如:
$condvar==43?$var1:$var2=14;
【編輯推薦】