📄 perl 语言-perl 中文教程(第三章).htm
字号:
(-5) ** 2.5 # error;<BR> (2)乘幂结果不能超出计算机表示的限制,如10 ** 999999 #
error<BR> (3)取余的操作数如不是整数,四舍五入成整数后运算;运算符右侧不能为零<BR> (4)单目负可用于变量:
- $y ; # 等效于 $y * -1<BR><BR><A name=二、整数比较操作符>二、整数比较操作符</A> <BR> </P>
<P align=center><B>Table 3.1. 整数比较操作符</B></P>
<DIV align=center>
<CENTER>
<TABLE borderColor=forestgreen cellSpacing=0 cellPadding=2 width="50%"
border=1>
<TBODY>
<TR>
<TD class=myFont vAlign=top width=85><B>操作符</B></TD>
<TD class=myFont vAlign=top width=233><B>描述</B></TD></TR>
<TR>
<TD class=myFont vAlign=top width=85><</TD>
<TD class=myFont vAlign=top width=233>小于</TD></TR>
<TR>
<TD class=myFont vAlign=top width=85>></TD>
<TD class=myFont vAlign=top width=233>大于</TD></TR>
<TR>
<TD class=myFont vAlign=top width=85>==</TD>
<TD class=myFont vAlign=top width=233>等于</TD></TR>
<TR>
<TD class=myFont vAlign=top width=85><=</TD>
<TD class=myFont vAlign=top width=233>小于等于</TD></TR>
<TR>
<TD class=myFont vAlign=top width=85>>=</TD>
<TD class=myFont vAlign=top width=233>大于等于</TD></TR>
<TR>
<TD class=myFont vAlign=top width=85>!=</TD>
<TD class=myFont vAlign=top width=233>不等于</TD></TR>
<TR>
<TD class=myFont vAlign=top width=85><=></TD>
<TD class=myFont vAlign=top width=233>比较,返回 1, 0, or -1
</TD></TR></TBODY></TABLE></CENTER></DIV>
<P><BR>操作符<=>结果为:<BR> 0 - 两个值相等<BR> 1 -
第一个值大<BR> 1 - 第二个值大<BR><BR><A name=三、字符串比较操作符>三、字符串比较操作符</A>
<BR></P>
<P align=center><B>Table 3.2. </B>字符串比较操作符</P>
<DIV align=center>
<CENTER>
<TABLE borderColor=forestgreen cellSpacing=0 cellPadding=2 width="80%"
border=1>
<TBODY>
<TR>
<TD class=myFont vAlign=top width=126><B>操作符</B></TD>
<TD class=myFont vAlign=top width=217><B>描述</B></TD>
<TD class=myFont vAlign=top width=219> </TD></TR>
<TR>
<TD class=myFont vAlign=top width=126><TT>lt</TT> </TD>
<TD class=myFont vAlign=top width=217>小于</TD>
<TD class=myFont vAlign=top width=219> </TD></TR>
<TR>
<TD class=myFont vAlign=top width=126><TT>gt</TT> </TD>
<TD class=myFont vAlign=top width=217>大于</TD>
<TD class=myFont vAlign=top width=219> </TD></TR>
<TR>
<TD class=myFont vAlign=top width=126><TT>eq</TT> </TD>
<TD class=myFont vAlign=top width=217>等于</TD>
<TD class=myFont vAlign=top width=219> </TD></TR>
<TR>
<TD class=myFont vAlign=top width=126><TT>le</TT> </TD>
<TD class=myFont vAlign=top width=217>小于等于</TD>
<TD class=myFont vAlign=top width=219> </TD></TR>
<TR>
<TD class=myFont vAlign=top width=126><TT>ge</TT> </TD>
<TD class=myFont vAlign=top width=217>大于等于</TD>
<TD class=myFont vAlign=top width=219> </TD></TR>
<TR>
<TD class=myFont vAlign=top width=126><TT>ne</TT> </TD>
<TD class=myFont vAlign=top width=217>不等于</TD>
<TD class=myFont vAlign=top width=219> </TD></TR>
<TR>
<TD class=myFont vAlign=top width=126><TT>cmp</TT> </TD>
<TD class=myFont vAlign=top width=217>比较,返回 1, 0, or -1</TD>
<TD class=myFont vAlign=top
width=219> </TD></TR></TBODY></TABLE></CENTER></DIV>
<P><BR><A name=四、逻辑操作符>四、逻辑操作符</A> <BR> 逻辑或:$a || $b 或 $a or
$b<BR> 逻辑与:$a && $b 或 $a and $b<BR> 逻辑非:! $a
或 not $a<BR> 逻辑异或:$a xor $b<BR><BR><A name=五、位操作符>五、位操作符</A>
<BR> 位与:&<BR> 位或:|<BR> 位非:~<BR> 位异或:^<BR> 左移:$x
<< 1<BR> 右移:$x >>
2<BR> 注:不要将&用于负整数,因为PERL将会把它们转化为无符号数。<BR><BR><A
name=六、赋值操作符>六、赋值操作符</A> <BR></P>
<P align=center><B>Table 3.3. 赋值操作符</B></P>
<DIV align=center>
<CENTER>
<TABLE borderColor=forestgreen cellSpacing=0 cellPadding=2 width="50%"
border=1>
<TBODY>
<TR>
<TD class=myFont vAlign=top width=85><B>操作符</B></TD>
<TD class=myFont vAlign=top width=219><B>描述</B></TD></TR>
<TR>
<TD class=myFont vAlign=top width=85>=</TD>
<TD class=myFont vAlign=top width=219>Assignment only</TD></TR>
<TR>
<TD class=myFont vAlign=top width=85>+=</TD>
<TD class=myFont vAlign=top width=219>Addition and assignment </TD></TR>
<TR>
<TD class=myFont vAlign=top width=85>-=</TD>
<TD class=myFont vAlign=top width=219>Subtraction and assignment
</TD></TR>
<TR>
<TD class=myFont vAlign=top width=85>*=</TD>
<TD class=myFont vAlign=top width=219>Multiplication and assignment
</TD></TR>
<TR>
<TD class=myFont vAlign=top width=85>/=</TD>
<TD class=myFont vAlign=top width=219>Division and assignment </TD></TR>
<TR>
<TD class=myFont vAlign=top width=85>%=</TD>
<TD class=myFont vAlign=top width=219>Remainder and assignment
</TD></TR>
<TR>
<TD class=myFont vAlign=top width=85>**=</TD>
<TD class=myFont vAlign=top width=219>Exponentiation and assignment
</TD></TR>
<TR>
<TD class=myFont vAlign=top width=85>&=</TD>
<TD class=myFont vAlign=top width=219>Bitwise AND and assignment
</TD></TR>
<TR>
<TD class=myFont vAlign=top width=85>|=</TD>
<TD class=myFont vAlign=top width=219>Bitwise OR and assignment
</TD></TR>
<TR>
<TD class=myFont vAlign=top width=85>^=</TD>
<TD class=myFont vAlign=top width=219>Bitwise XOR and assignment
</TD></TR></TBODY></TABLE></CENTER></DIV>
<P><BR></P>
<P align=center><B>Table 3.4. </B>赋值操作符例子</P>
<DIV align=center>
<CENTER>
<TABLE borderColor=forestgreen cellSpacing=0 cellPadding=2 width="50%"
border=1>
<TBODY>
<TR>
<TD class=myFont vAlign=top width=192><B>表达式</B></TD>
<TD class=myFont vAlign=top width=288>等效表达式 </TD></TR>
<TR>
<TD class=myFont vAlign=top width=192><TT>$a = 1;</TT> </TD>
<TD class=myFont vAlign=top width=288>none (basic assignment)</TD></TR>
<TR>
<TD class=myFont vAlign=top width=192><TT>$a -= 1;</TT> </TD>
<TD class=myFont vAlign=top width=288><TT>$a = $a - 1;</TT> </TD></TR>
<TR>
<TD class=myFont vAlign=top width=192><TT>$a *= 2;</TT> </TD>
<TD class=myFont vAlign=top width=288><TT>$a = $a * 2;</TT> </TD></TR>
<TR>
<TD class=myFont vAlign=top width=192><TT>$a /= 2;</TT> </TD>
<TD class=myFont vAlign=top width=288><TT>$a = $a / 2;</TT> </TD></TR>
<TR>
<TD class=myFont vAlign=top width=192><TT>$a %= 2;</TT> </TD>
<TD class=myFont vAlign=top width=288><TT>$a = $a % 2;</TT> </TD></TR>
<TR>
<TD class=myFont vAlign=top width=192><TT>$a **= 2;</TT> </TD>
<TD class=myFont vAlign=top width=288><TT>$a = $a ** 2;</TT> </TD></TR>
<TR>
<TD class=myFont vAlign=top width=192><TT>$a &= 2;</TT> </TD>
<TD class=myFont vAlign=top width=288><TT>$a = $a & 2;</TT>
</TD></TR>
<TR>
<TD class=myFont vAlign=top width=192><TT>$a |= 2;</TT> </TD>
<TD class=myFont vAlign=top width=288><TT>$a = $a | 2;</TT> </TD></TR>
<TR>
<TD class=myFont vAlign=top width=192><TT>$a ^= 2;</TT> </TD>
<TD class=myFont vAlign=top width=288><TT>$a = $a ^ 2;</TT>
</TD></TR></TBODY></TABLE></CENTER></DIV>
<P><BR>.=可在一个赋值语句中出现多次,如:<BR> $value1 = $value2 = "a
string";<BR>.=作为子表达式<BR> ($a = $b) +=
3;<BR> 等价于<BR> $a = $b;<BR> $a +=
3;<BR> 但建议不要使用这种方式。<BR><BR><A name=七、自增自减操作符>七、自增自减操作符</A>
:++、--(与C++中的用法相同)<BR>.不要在变量两边都使用此种操作符:++$var-- #
error<BR>.不要在变量自增/减后在同一表达式中再次使用:$var2 = $var1 + ++$var1; #
error<BR>.在PERL中++可用于字符串,但当结尾字符为'z'、'Z'、'9'时进位,如:<BR> $stringvar
= "abc";<BR> $stringvar++; # $stringvar contains "abd"
now<BR><BR> $stringvar = "aBC";<BR> $stringvar++; #
$stringvar contains "aBD" now<BR><BR> $stringvar =
"abz";<BR> $stringvar++; # $stringvar now contains
"aca"<BR><BR> $stringvar =
"AGZZZ";<BR> $stringvar++; # $stringvar now contains "AHAAA"
<BR><BR> $stringvar = "ab4";<BR> $stringvar++; #
$stringvar now contains "ab5"<BR><BR> $stringvar =
"bc999";<BR> $stringvar++; # $stringvar now contains "bd000"
<BR>.不要使用--,PERL将先将字符串转换为数字再进行自减<BR> $stringvar =
"abc";<BR> $stringvar--; # $stringvar = -1
now<BR><BR>.如果字符串中含有非字母且非数字的字符,或数字位于字母中,则经过++运算前值转换为数字零,因此结果为1,如:<BR> $stringvar
= "ab*c";<BR> $stringvar++;<BR> $stringvar =
"ab5c";<BR> $stringvar++;<BR><BR><A
name=八、字符串联结和重复操作符>八、字符串联结和重复操作符</A> <BR> 联接:
.<BR> 重复:x<BR> 联接且赋值(类似+=):
.=<BR>例:<BR> $newstring = "potato" .
"head";<BR> $newstring = "t" x 5;<BR> $a =
"be";<BR> $a .= "witched"; # $a is now "bewitched"<BR><BR><A
name=九、逗号操作符>九、逗号操作符</A>
<BR> 其前面的表达式先进行运算,如:<BR> $var1 += 1, $var2 =
$var1;<BR> 等价于<BR> $var1 += 1;<BR> $var2
=
$var1;<BR> 使用此操作符的唯一理由是提高程序的可读性,将关系密切的两个表达式结合在一起,如:<BR> $val
= 26;<BR> $result = (++$val, $val + 5); # $result =
32<BR> 注意如果此处没有括号则意义不同:<BR> $val =
26;<BR> $result = ++$val, $val + 5; # $result = 27<BR><BR><A
name=十、条件操作符>十、条件操作符</A>
<BR> 与C中类似,条件?值1:值2,当条件为真时取值1,为假时取值2,如:<BR> $result
= $var == 0 ? 14 : 7;<BR> $result = 43 + ($divisor == 0 ? 0 :
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -