📄 perl3.htm
字号:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb_2312-80">
<title></title>
<LINK rel="stylesheet" href="article.css" type="text/css">
</head>
<body>
<br>
<p align="center">第三章 操作符 <br></p>
<p align="center"><a target="_blank" href="http://flamephoenix.126.com">by flamephoenix</a></p>
<a href="#一、算术操作符">一、算术操作符</a><br>
<a href="#二、整数比较操作符">二、整数比较操作符</a><br>
<a href="#三、字符串比较操作符">三、字符串比较操作符</a><br>
<a href="#四、逻辑操作符"> 四、逻辑操作符</a><br>
<a href="#五、位操作符"> 五、位操作符</a><br>
<a href="#六、赋值操作符"> 六、赋值操作符</a><br>
<a href="#七、自增自减操作符">七、自增自减操作符</a><br>
<a href="#八、字符串联结和重复操作符">八、字符串联结和重复操作符</a><br>
<a href="#九、逗号操作符"> 九、逗号操作符</a><br>
<a href="#十、条件操作符"> 十、条件操作符</a><br>
<a href="#十一、操作符的次序">十一、操作符的次序</a>
<br><br>
<a name="一、算术操作符"> 一、算术操作符</a>
:+(加)、-(减)、*(乘)、/(除)、**(乘幂)、%(取余)、-(单目负)<br>
(1)乘幂的基数不能为负,如 (-5) ** 2.5 #
error;<br>
(2)乘幂结果不能超出计算机表示的限制,如10
** 999999 # error<br>
(3)取余的操作数如不是整数,四舍五入成整数后运算;运算符右侧不能为零<br>
(4)单目负可用于变量: - $y ; # 等效于 $y
* -1<br>
<a name="二、整数比较操作符">
二、整数比较操作符</a>
<br>
<br>
</p>
<p align="center"> <b>Table 3.1. </b>
<b>整数比较操作符</b></p>
<div align="center"><center>
<table border="1" width="50%">
<tr>
<td valign="top" width="85"> <b>操作符</b></td>
<td valign="top" width="233"> <b>描述</b></td>
</tr>
<tr>
<td valign="top" width="85"> <</td>
<td valign="top" width="233"> 小于</td>
</tr>
<tr>
<td valign="top" width="85"> ></td>
<td valign="top" width="233"> 大于</td>
</tr>
<tr>
<td valign="top" width="85"> ==</td>
<td valign="top" width="233"> 等于</td>
</tr>
<tr>
<td valign="top" width="85"> <=</td>
<td valign="top" width="233"> 小于等于</td>
</tr>
<tr>
<td valign="top" width="85"> >=</td>
<td valign="top" width="233"> 大于等于</td>
</tr>
<tr>
<td valign="top" width="85"> !=</td>
<td valign="top" width="233"> 不等于</td>
</tr>
<tr>
<td valign="top" width="85"> <=></td>
<td valign="top" width="233"> 比较,返回
1, 0, or -1 </td>
</tr>
</table>
</center></div>
<p> <br>
操作符<=>结果为:<br>
0 - 两个值相等<br>
1 - 第一个值大<br>
1 - 第二个值大<br>
<a name="三、字符串比较操作符">
三、字符串比较操作符</a>
<br>
<br>
</p>
<p align="center"> <b>Table 3.2. </b>字符串比较操作符</p>
<div align="center"><center>
<table border="1" width="80%">
<tr>
<td valign="top" width="126"> <b>操作符</b></td>
<td valign="top" width="217"> <b>描述</b></td>
<td valign="top" width="219"> </td>
</tr>
<tr>
<td valign="top" width="126"> <tt>lt</tt>
</td>
<td valign="top" width="217"> 小于</td>
<td valign="top" width="219"> </td>
</tr>
<tr>
<td valign="top" width="126"> <tt>gt</tt>
</td>
<td valign="top" width="217"> 大于</td>
<td valign="top" width="219"> </td>
</tr>
<tr>
<td valign="top" width="126"> <tt>eq</tt>
</td>
<td valign="top" width="217"> 等于</td>
<td valign="top" width="219"> </td>
</tr>
<tr>
<td valign="top" width="126"> <tt>le</tt>
</td>
<td valign="top" width="217"> 小于等于</td>
<td valign="top" width="219"> </td>
</tr>
<tr>
<td valign="top" width="126"> <tt>ge</tt>
</td>
<td valign="top" width="217"> 大于等于</td>
<td valign="top" width="219"> </td>
</tr>
<tr>
<td valign="top" width="126"> <tt>ne</tt>
</td>
<td valign="top" width="217"> 不等于</td>
<td valign="top" width="219"> </td>
</tr>
<tr>
<td valign="top" width="126"> <tt>cmp</tt>
</td>
<td valign="top" width="217"> 比较,返回
1, 0, or -1</td>
<td valign="top" width="219"> </td>
</tr>
</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>
<a name="五、位操作符"> 五、位操作符</a>
<br>
位与:&<br>
位或:|<br>
位非:~<br>
位异或:^<br>
左移:$x << 1<br>
右移:$x >> 2<br>
注:不要将&用于负整数,因为PERL将会把它们转化为无符号数。<br>
<a name="六、赋值操作符"> 六、赋值操作符</a>
<br>
<br>
</p>
<p align="center"> <b>Table 3.3.
赋值操作符</b></p>
<div align="center"><center>
<table border="1" width="50%">
<tr>
<td valign="top" width="85"> <b>操作符</b></td>
<td valign="top" width="219"> <b>描述</b></td>
</tr>
<tr>
<td valign="top" width="85"> =</td>
<td valign="top" width="219"> Assignment
only</td>
</tr>
<tr>
<td valign="top" width="85"> +=</td>
<td valign="top" width="219"> Addition
and assignment </td>
</tr>
<tr>
<td valign="top" width="85"> -=</td>
<td valign="top" width="219"> Subtraction
and assignment </td>
</tr>
<tr>
<td valign="top" width="85"> *=</td>
<td valign="top" width="219"> Multiplication
and assignment </td>
</tr>
<tr>
<td valign="top" width="85"> /=</td>
<td valign="top" width="219"> Division
and assignment </td>
</tr>
<tr>
<td valign="top" width="85"> %=</td>
<td valign="top" width="219"> Remainder
and assignment </td>
</tr>
<tr>
<td valign="top" width="85"> **=</td>
<td valign="top" width="219"> Exponentiation
and assignment </td>
</tr>
<tr>
<td valign="top" width="85"> &=</td>
<td valign="top" width="219"> Bitwise
AND and assignment </td>
</tr>
<tr>
<td valign="top" width="85"> |=</td>
<td valign="top" width="219"> Bitwise
OR and assignment </td>
</tr>
<tr>
<td valign="top" width="85"> ^=</td>
<td valign="top" width="219"> Bitwise
XOR and assignment </td>
</tr>
</table>
</center></div>
<p> <br>
</p>
<p align="center"> <b>Table 3.4. </b>赋值操作符例子</p>
<div align="center"><center>
<table border="1" width="50%">
<tr>
<td valign="top" width="192"> <b>表达式</b></td>
<td valign="top" width="288"> 等效表达式
</td>
</tr>
<tr>
<td valign="top" width="192"> <tt>$a
= 1;</tt> </td>
<td valign="top" width="288"> none
(basic assignment)</td>
</tr>
<tr>
<td valign="top" width="192"> <tt>$a
-= 1;</tt> </td>
<td valign="top" width="288"> <tt>$a
= $a - 1;</tt> </td>
</tr>
<tr>
<td valign="top" width="192"> <tt>$a
*= 2;</tt> </td>
<td valign="top" width="288"> <tt>$a
= $a * 2;</tt> </td>
</tr>
<tr>
<td valign="top" width="192"> <tt>$a
/= 2;</tt> </td>
<td valign="top" width="288"> <tt>$a
= $a / 2;</tt> </td>
</tr>
<tr>
<td valign="top" width="192"> <tt>$a
%= 2;</tt> </td>
<td valign="top" width="288"> <tt>$a
= $a % 2;</tt> </td>
</tr>
<tr>
<td valign="top" width="192"> <tt>$a
**= 2;</tt> </td>
<td valign="top" width="288"> <tt>$a
= $a ** 2;</tt> </td>
</tr>
<tr>
<td valign="top" width="192"> <tt>$a
&= 2;</tt> </td>
<td valign="top" width="288"> <tt>$a
= $a & 2;</tt> </td>
</tr>
<tr>
<td valign="top" width="192"> <tt>$a
|= 2;</tt> </td>
<td valign="top" width="288"> <tt>$a
= $a | 2;</tt> </td>
</tr>
<tr>
<td valign="top" width="192"> <tt>$a
^= 2;</tt> </td>
<td valign="top" width="288"> <tt>$a
= $a ^ 2;</tt> </td>
</tr>
</table>
</center></div>
<p> <br>
.=可在一个赋值语句中出现多次,如:<br>
$value1 = $value2 = "a string";<br>
.=作为子表达式<br>
($a = $b) += 3;<br>
等价于<br>
$a = $b;<br>
$a += 3;<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>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -