close

在 Perl 中,大部分的字串都用雙引號 " "(Double Quote)來界定,

而在雙引號中的變數,則會被代換成變數值

$name = "jason"; # $name 的值是 "jason"

$str1 =My first name is $name"; # $str1 的值是 "My first name is jason"

另一種作法,則是以單引號 ' '(Single Quote)來界定字串,

此時 Perl 就不會對其內的變數進行代換

$str2 = 'My first name is $name'; # $str2 的值是 "My first name is $name"

若要將字串相連,可用句點 . 符號

$str3 = "My bird is " . (2*9) . "cm long"; # $str3 的值是 "My bird is 18 cm long"

也可以用「x」運算來進行字串的重複

$str4 = "叔叔" . "是" . "壞人\n";
$str5 =$str4 x5;

print $str5;

結果:

叔叔是壞人
叔叔是壞人
叔叔是壞人
叔叔是壞人
叔叔是壞人

Perl 支援以反斜線開始的特殊字元

符號說明
\a 鈴聲
\b 退位鍵(Backspace)
\e Escape 鍵
\f Formfeed
\n 換行(Return)
\t 定位鍵(Tab)
\cJ 控制字元,此例代表 Control-J
\xA 16 進位記號,A16 = 1010 = 換行字元
\012 8 進位記號,128 = 1010 = 換行字元
\\ 反斜線
\" 雙引號
\' 單引號
\l 下一個字元改為小寫
\u 下一個字元改為大寫
\L 由下一個字元開始,到\E或字串結束之位置,都改為小寫
\U 由下一個字元開始,到\E或字串結束之位置,都改為大寫
\E 結束 \L 或 \U 的效用

 

 

 

 

 

 

 

 

 

 

 

 

字串處理相關的函數,

符號說明
chomp 移除字串尾端的換行字元
chop 移除字串尾端的字元
chr 將 ASCII 代碼轉換至字元
crypt 字串加密
hex 將 16 進位表示的字串轉為數值
index 傳回一字串在另一自串出現的第一個位置
lc 轉為小寫字元
lcfirst 第一個字母轉為小寫字元
length 計算字串長度
oct 將 8 進位表示的字串轉為數值
ord 將字元轉換為數值(ASCII 代碼或 Unicode)
pack 將數值或字串進行各種壓縮與轉換
q/STRING/  
qq/STRING/  
reverse 將自串左右顛倒
rindex 傳回一字串在另一自串出現的最後一個位置
sprintf 傳回由 printf 所形成的字串
substr 取出子字串
tr/// 字串轉換運算(Transliteral Operation)
uc 將字串全部變成大寫
ucfirst 將字串的第一個字母變成大寫
y/// 字串轉換運算(Transliteral Operation)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

可用字串來讀取鍵盤輸入,例如:

$str6 = <STDIN>; # 從鍵盤(即標準輸入裝置,STDIN)取得一列文字輸入

chomp($str6); # 刪除此輸入字串尾端的換行符號

也可合成一列程式碼:

chomp($a = <STDIN>);

若要將一個檔案(test.txt)的內容逐一讀出,可用下列程式碼:

open(FILE, "test.txt") || die("Cannot open file");

$line = <FILE>;

while (defined($line)) {

print "$line";

$line = <FILE>; }

 

arrow
arrow
    全站熱搜

    hweily 發表在 痞客邦 留言(0) 人氣()