赋值(Assignment)运算符 符号 范例 说明 = $x=$y; 将$x的值指派给$y += $x+=$y; $x=$x+$y; 将$x加$y之后再指派给$x -= $x-=$y; $x=$x-$y; 将$x减$y之后再指派给$x *= $x*=$y; $x=$x*$y; 将$x乘$y之后再指派给$x /= $x/=$y; $x=$x/$y; 求出$x除以$y之后的商数,再指派给$x **= $x**=$y; $x=$x**$y; 将$x乘上$y次方之后再指派给$x %= $x%=$y; $x=$x%$y; 求出$x除以$y的余数以后,再指派给$x .= $str1.=$str2; $str1=$str1.$str2; 将$str1这个字符串再加上$str2这个字符串之后,再指派给$str1这个字符串 x= $strx=$y; $str=$strx$y; 重复$str字符串$y次,并反结果指派给str这个字符串
算术(Arithmetic)运算符 符号 范例 说明 + $z=$x+$y 将$x和$y相加之后,再将结果指派给$z - $z=$x-$y 将$x减掉$y之后,再将结果指派给$z * $z=$x*$y 将$x和$y相乘之后,再将结果指派给$z / $z=$x/$y 将$x除以$y之后,再将商数指派给$z % $z=$x%$y 将$x除以$y之后,再将余数指派给$z ** $z=$x**$y 将$x乘以$y之后,再将结果指派给$z ++ $x++;++$x; 如同$x=$x++1;将$x加一以后再将结果指派给$x -- $x--;--$x; 如同$x=$x-1;将$x减一以后再将结果指派给$x . $z=$x.$y; 将$x字符串和$y字符串连接之后,再将结果指派给$z
数值(Numeric Values)关系运算符 符号 范例 说明 > $x>$y 如果$x大于$y,返回1的值,否则返回0 >= $x>=$y 如果$x大于等于$y,返回1的值,否则返回0 $x$y 如果$x小于$y,返回1的值,否则返回0 = $x=$y 如果$x小于等于$y,返回1的值,否则返回0 == $x==$y 如果$x等于$y,返回1的值,否则返回0 != $x!=$y 如果$x不等于$y,返回1的值,否则返回0 => $x=>$y 如果$x大于$y,返回1的值,如果$x等于$y,否则返回0;&127;如果 $x小于$y,则返回-1的值
字符串(String Values)关系运算符 符号 范例 说明 gt $str1 gt $str2 如果$str1大于$str2,返回1的值,否则返回0 ge $str1 ge $str2 如果$str1大于等于$str2,返回1的值,否则返回0 lt $str1 lt $str2 如果$str1小于$str2,返回1的值,否则返回0 le $str1 le $str2 如果$str1小于等于$str2,返回1的值,否则返回0 eq $str1 ep $str2 如果$str1等于$str2,返回1的值,否则返回0 ne $str1 ne $str2 如果$str1不等于$str2,返回1的值,否则返回0 cmp $str1 cmp $str2 如果$str1大于$str2,返回1的值,如果$str1等于$str2,返回0,如果$str1小于$str2,则返回-1的值
逻辑(Logical)运算 1 $x&&$y(And) </P><P>$x $y 结果 </P><P>真(True) 真(True) 真(True) </P><P>真(True) 假(False) 真(True) </P><P>假(False) 真(True) 假(False) </P><P>假(False) 假(False) 假(False) </P><P>2 $x||$y(Or) </P><P>$x $y 结果 </P><P>真(True) 真(True) 真(True) </P><P>真(True) 假(False) 真(True) </P><P>假(False) 真(True) 真(True) </P><P>假(False) 假(False) 假(False) </P><P>3 $x(Not) </P><P>$x 结果 </P><P>真(True) 假(False)假(False) 真(True) </P><P>其它常用的运算符 指令:..区块运算符(Range Operator) </P><P>说明:这个运算符是Perl语言中特有的运算符,是一个很实用的运算符. </P><P>范例: </P><P>@digits=(1..9); #此时@digits=(1,2,3,4,5,6,7,8,9); @digits=(’01’..’05’); #此时@digits=(01,02,03,04,05); @char=(’A’..’E’); #此时@char(’A’,’B’,’C’,’D’,’E’,); @total=(1..3,’A’..’B’); #此时@total=(1,2,3’A’,’B’); </P><P>指令: 判别运算式?运算1:运算式2 条件运算符(Conditional Operator) </P><P>说明: 这个语法的意义和C语言一样,如果判别运算式的值是真(True)的话,则做运算 ,1的运算,如果判别运算式是假(False)的话,则做运算式2的运算. </P><P>范例: </P><P>$price=($age>60)? 100:200; 如果$age大于60的话,则$price等于100,否则$price等于200. </P><P>
常用的文件数据(File test)运算符 范例 说明 -r $file 如果$file是可读取的话,返回1的值 -w $file 如果$file是可写入的话,返回1的值 -x $file 如果$file是可执行的话,返回1的值 -e $file 如果$file存在的话,返回1的值 -o $file 如果$file是被执行才所拥有的话,返回1的值 -s $file 返回$file的文件大小(bytes) -f $file 如果$file是正常文件的话,返回1的值 -T $file 如果$file是文本文件的话,返回1的值 -B $file 如果$file是Binary文件的话,返回1的值 -M $file 返回$file文件最后一次更改时间到现在的日期数
|