本文概述
Perl语言是一种松散类型的语言, Perl解释器本身会选择数据类型。因此, 不需要在Perl编程中指定数据类型。
Perl中基本上有三种数据类型:
- 标量:Perl标量是单个数据项。它们是简单的变量, 后跟($)符号。标量可以是数字, 引用(变量的地址)或字符串。
- 数组:Perl数组是标量的有序列表。它们以(@)符号开头, 并以从0开始的索引号进行访问。
- 哈希:Perl哈希是键值对的无序集合。它们前面带有(%)号, 并可以使用键进行访问。
Perl文字
在Perl中, 有两种不同类型的标量常量:
- 数值文字
- 字符串字面量
Perl数值文字
Perl数字文字是数字。 Perl在内部将数字存储为带符号整数或浮点值。
可为Perl数字文字分配以下格式的类型:
Number | Type |
---|---|
526 | Integer |
5.5 | 浮点 |
5e10 | 科学计数法 |
5.5E | 科学计数法 |
5_549_63 | 大量的 |
010101 | 二进制数 |
0175 | 八进制数 |
AF0230 | Hexadecimal number |
看上表,
- 整数是一组连续的数字。
- 浮点数之间包含一个小数。在数字(234.00)右侧包含” 0″值的数字也是浮点数。
- 包含指数符号(e或E)的数字是科学符号。
- 不允许在数字文字中使用逗号, 但是你可以使用下划线(_)代替逗号。使用此值时, Perl将删除下划线。
- 0和1的组合表示以2为底的二进制数。
- 前导0的数字属于以8为底的八进制数字类别。
- 包含字母(a, b, c, d, e, f)的数字是以16为底的十六进制数字。
Perl字符串文字
Perl字符串文字包含一个空字符串, ASCII文本, 具有高位的ASCII或二进制数据。字符串中包含数据没有限制。它们被单引号(‘)或双引号(”)包围。
双引号字符串中允许变量插值, 但单引号字符串中不允许变量插值。此外, 仅双引号字符串支持反斜杠(\)前面的特殊字符。
字符串文字中的转义字符
Characters | Purpose |
---|---|
\n | 表示换行 |
\r | 表示回车 |
\ t | 表示水平制表符 |
\v | 表示垂直标签 |
\Q | 所有非字母数字字符后的反斜杠 |
\a | Denotes alert |
\f | 表示换页 |
\b | 表示退格键 |
\u | 将下一个字符更改为大写 |
\U | 将以下所有字符更改为大写 |
\l | 将下一个字符更改为小写 |
\L | 将以下所有字符更改为小写 |
\E | 表示\ U \ 50 \ Q |
\cX | 控制字符, X是变量 |
\0nn | 创建八进制格式的数字 |
\xnn | 创建十六进制格式的数字 |
\\ | 表示反斜杠 |
\’ | 表示单引号 |
\” | 表示双引号 |