網頁

2010年12月9日 星期四

Perl – 純量變數(scalars)

Perl 的最基本的變數型態,可以是文字,也可以是數字,兩者可以互換。
變數名稱可含有數字、文字、以及下畫線"_",但是它們不可以數字開頭。


數值

整數和浮點數,又可以以八進位、十六進位和二進位表示。
$aa = 5;
$bb = 1.22;
$cc = 0523
$dd = 0x1c
$ee = 0b11110011

運算子(Operators)對照表,運算優先順序越往下越低:

-> 方法呼叫、解參考
++ 遞增, -- 遞減
** 乘冪(次方)
! 非,~ 位元運算的 非,\ 參考
=~ 比對相符,!~ 比對不符
* 乘,/ 除, % 求餘數, x 字串倍數
+ 加、- 減, . 字串連接
<< 位元左移,>> 位元右移
< 小於,> 大於,<= 小於或等於,>= 大於或等於,lt 字串小於,gt 字串大於,le 字串小於或等於,ge 字串大於或等於
== 等於,!= 不等於,<=> 數值比較,eq 字串等於,ne 字串不等於,cmp 字串比較
& 位元AND
| 位元OR^ 位元 XOR
&& AND()
|| OR ()
.. 範圍
? : 三元運算子,例: ($a > $b) ? $a : $b;
= 指定,+=-=*= 等等
, 逗號運算子,=> 箭號運算子
not 邏輯的 NOT
and 邏輯的 AND
or  邏輯的 OR
xor 邏輯的 XOR

字串

字串由任意字元組成,必須以單引號或雙引號刮起來。
$str = ‘test’;
$chstr = “中文也可以”;

單引號和雙引號兩個使用區別
1, 單引號無法使用跳脫字元,會完整呈現出來。
2. 單引號無法做變數代換。

Perl 常見的跳脫字元:

\n   換行符號
\r   回行符號
\t   定位 tab 符號
\f   跳頁
\b   退格
\a   鈴聲
\0   八進位數,如:\007
\x   十六進位數,如:\x16
\\   \ 這個符號
\"   " 雙引號

scalars.pl
#!/usr/bin/perl
$str = "test";
print '$str\n';
print "$str\n";

$ scalars.pl
$str\ntest

數值和字串的運算

數值和字串可以一起運算,結果視目的而定。
$v1 = 91;
$v2 = '1';

print $v1 + $v2;
結果:92 (數值)

$v1 = 91;
$v2 = '1';

print $v2 . $v1;
結果:911 (字串)

$v1 = '123';

print $v1 * 1;

結果:123 (數值)

沒有留言:

張貼留言