深入學(xué)習(xí)Perl運(yùn)算符用法
本文繼續(xù)和大家討論一下Perl運(yùn)算符的用法,這里介紹的Perl運(yùn)算符主要包括自增自減運(yùn)算符,字符串聯(lián)結(jié)和重復(fù)運(yùn)算符,逗號(hào)運(yùn)算符,條件運(yùn)算符和Perl運(yùn)算符的優(yōu)先級(jí)等內(nèi)容,相信通過(guò)本文的的介紹你對(duì)Perl運(yùn)算符有全面的認(rèn)識(shí)。
Perl運(yùn)算符
一、自增自減運(yùn)算符:++、--
◆不要在變量?jī)蛇叾际褂么朔N操作符:++$var--#error
◆不要在變量自增/減后在同一表達(dá)式中再次使用:$var2=$var1+++$var1;#error
◆在PERL中++可用于字符串,但當(dāng)結(jié)尾字符為'z'、'Z'、'9'時(shí)進(jìn)位,如:
$stringvar="abc";
$stringvar++;#$stringvarcontains"abd"now
$stringvar="aBC";
$stringvar++;#$stringvarcontains"aBD"now
$stringvar="abz";
$stringvar++;#$stringvarnowcontains"aca"
$stringvar="AGZZZ";
$stringvar++;#$stringvarnowcontains"AHAAA"
$stringvar="ab4";
$stringvar++;#$stringvarnowcontains"ab5"
$stringvar="bc999";
$stringvar++;#$stringvarnowcontains"bd000"
◆不要使用--,PERL將先將字符串轉(zhuǎn)換為數(shù)字再進(jìn)行自減
$stringvar="abc";
$stringvar--;#$stringvar=-1now
◆如果字符串中含有非字母且非數(shù)字的字符,或數(shù)字位于字母中,則經(jīng)過(guò)++運(yùn)算前值轉(zhuǎn)換為數(shù)字零,因此結(jié)果為1,如:
$stringvar="ab*c";
$stringvar++;
$stringvar="ab5c";
$stringvar++; #p#
二、Perl運(yùn)算符之字符串聯(lián)結(jié)和重復(fù)運(yùn)算符
1.聯(lián)接:.
2.重復(fù):x
3.聯(lián)接且賦值(類(lèi)似+=):.=
例:
$newstring="potato"."head";
$newstring="t"x5;
$a="be";
$a.="witched";#$aisnow"bewitched"
三、Perl運(yùn)算符之逗號(hào)運(yùn)算符
其前面的表達(dá)式先進(jìn)行運(yùn)算,如:
$var1+=1,$var2=$var1;
等價(jià)于
$var1+=1;
$var2=$var1;
使用此操作符的唯一理由是提高程序的可讀性,將關(guān)系密切的兩個(gè)表達(dá)式結(jié)合在一起,如:
$val=26;
$result=(++$val,$val+5);#$result=32
注意如果此處沒(méi)有括號(hào)則意義不同:
$val=26;
$result=++$val,$val+5;#$result=27
四、Perl運(yùn)算符之條件運(yùn)算符
與C中類(lèi)似,條件?值1:值2,當(dāng)條件為真時(shí)取值1,為假時(shí)取值2,如:
$result=$var==0?14:7;
$result=43+($divisor==0?0:$dividend/$divisor);
PERL5中,還可以在賦值式左邊使用條件操作符來(lái)選擇被賦值的變量,如:
$condvar==43?$var1:$var2=14;
$condvar==43?$var1=14:$var2=14;
五、Perl運(yùn)算符的優(yōu)先級(jí)
Table5.運(yùn)算符的優(yōu)先級(jí)
【編輯推薦】
- 學(xué)習(xí)筆記 解析六大Perl運(yùn)算符用法
- Perl文件句柄概念詳解
- Perl二維數(shù)組用法全程剖析
- 學(xué)習(xí)筆記 Perl數(shù)字與字符串間的自動(dòng)轉(zhuǎn)換
- Perl文字處理模式(regularexpresion)相關(guān)的運(yùn)算符及函數(shù)