
- Perl 基礎
- Perl - 首頁
- Perl - 簡介
- Perl - 環境
- Perl - 語法概述
- Perl - 資料型別
- Perl - 變數
- Perl - 標量
- Perl - 陣列
- Perl - 雜湊表
- Perl - IF...ELSE
- Perl - 迴圈
- Perl - 運算子
- Perl - 日期和時間
- Perl - 子程式
- Perl - 引用
- Perl - 格式
- Perl - 檔案 I/O
- Perl - 目錄
- Perl - 錯誤處理
- Perl - 特殊變數
- Perl - 編碼規範
- Perl - 正則表示式
- Perl - 傳送郵件
- Perl 高階
- Perl - 套接字程式設計
- Perl - 面向物件
- Perl - 資料庫訪問
- Perl - CGI 程式設計
- Perl - 包和模組
- Perl - 程序管理
- Perl - 內嵌文件
- Perl - 函式引用
- Perl 有用資源
- Perl - 問答
- Perl - 快速指南
- Perl - 有用資源
- Perl - 討論
Perl - 資料型別
Perl 是一種弱型別語言,在程式中使用資料時無需指定型別。Perl 直譯器將根據資料的上下文字身選擇型別。
Perl 有三種基本資料型別:標量、標量陣列和標量雜湊表(也稱為關聯陣列)。以下是關於這些資料型別的詳細資訊。
序號 | 型別和描述 |
---|---|
1 | 標量 標量是簡單的變數。它們前面帶有美元符號 ($) 。標量可以是數字、字串或引用。引用實際上是變數的地址,我們將在接下來的章節中看到。 |
2 | 陣列 陣列是有序的標量列表,您可以使用從 0 開始的數字索引訪問它們。它們前面帶有“at”符號 (@)。 |
3 | 雜湊表 雜湊表是無序的鍵值對集合,您可以使用鍵作為下標來訪問它們。它們前面帶有百分號 (%)。 |
數字字面量
Perl 將所有數字內部儲存為帶符號整數或雙精度浮點數。數字字面量可以用以下任何浮點數或整數格式指定:
型別 | 值 |
---|---|
整數 | 1234 |
負整數 | -100 |
浮點數 | 2000 |
科學計數法 | 16.12E14 |
十六進位制 | 0xffff |
八進位制 | 0577 |
字串字面量
字串是字元序列。它們通常是由單引號 (') 或雙引號 (") 分隔的字母數字值。它們的工作方式與 UNIX shell 引號非常相似,您可以在其中使用單引號字串和雙引號字串。
雙引號字串字面量允許變數插值,而單引號字串則不允許。某些字元在前面帶有反斜槓時具有特殊含義,它們用於表示換行符 (\n) 或製表符 (\t) 等。
您可以直接在雙引號字串中嵌入換行符或以下任何轉義序列:
轉義序列 | 含義 |
---|---|
\\ | 反斜槓 |
\' | 單引號 |
\" | 雙引號 |
\a | 警報或鈴聲 |
\b | 退格 |
\f | 換頁 |
\n | 換行 |
\r | 回車 |
\t | 水平製表符 |
\v | 垂直製表符 |
\0nn | 建立八進位制格式的數字 |
\xnn | 建立十六進位制格式的數字 |
\cX | 控制字元,x 可以是任何字元 |
\u | 強制下一個字元轉換為大寫 |
\l | 強制下一個字元轉換為小寫 |
\U | 強制所有後續字元轉換為大寫 |
\L | 強制所有後續字元轉換為小寫 |
\Q | 對所有後續非字母數字字元進行反斜槓轉義 |
\E | 結束 \U、\L 或 \Q |
示例
讓我們再次看看字串在單引號和雙引號中的行為。在這裡,我們將使用上表中提到的字串轉義符,並使用標量變數來賦值字串。
#!/usr/bin/perl # This is case of interpolation. $str = "Welcome to \ntutorialspoint.com!"; print "$str\n"; # This is case of non-interpolation. $str = 'Welcome to \ntutorialspoint.com!'; print "$str\n"; # Only W will become upper case. $str = "\uwelcome to tutorialspoint.com!"; print "$str\n"; # Whole line will become capital. $str = "\UWelcome to tutorialspoint.com!"; print "$str\n"; # A portion of line will become capital. $str = "Welcome to \Ututorialspoint\E.com!"; print "$str\n"; # Backsalash non alpha-numeric including spaces. $str = "\QWelcome to tutorialspoint's family"; print "$str\n";
這將產生以下結果:
Welcome to tutorialspoint.com! Welcome to \ntutorialspoint.com! Welcome to tutorialspoint.com! WELCOME TO TUTORIALSPOINT.COM! Welcome to TUTORIALSPOINT.com! Welcome\ to\ tutorialspoint\'s\ family
廣告