一、 数字
Perl内部并不存在整数值—程序中用到的整型常量会被转换成等效的浮点数值
- 浮点数直接量
小数点与前置的正负号都是可选的,数字后面也可以加上用“e”表示的10的次方标识符(即指数表示法)。例如:
1.25
7.25e45(7.25乘以10的45次方)
-12e-24(负12乘以10的-24次方)
-1.2E-23(另一种表示法:字母E也可以是大写的)
2. 整数直接量
0
-40
92283377112222 #可以表示为922_833771_12222,看起来更清楚
二、 字符串
字符串就是一个字符序列,最短的字符串不包含任何字符,所以叫做空字符串,最长的字符串的长度没有限制,甚至可以填满所有内存。
字符串中可以使用任意一个合法的Unicode字符。但它不会自动将程序源代码当做Unicode编码的文本文件读入,所以如果想要在源代码中使用Unicode书写直接量的话,得手工加上utf8编译指令
Use utf8
字符串直接量有两种不同形式:单引号内的字符串和双引号内的字符串
单引号内的字符串直接量:
单引号内的所有字符都代表他们自己(包括换行符)
‘hello there’ #hello、换行符、there(总共11个字符) ‘hello\n’ #hello后面接着反斜线和字母n ‘\’\\’ #单引号紧接着反斜线(总共2个字符) 双引号内的字符串直接量: “hello world\n” #hello world,后面跟着换行符 “coke\tsprite” #coke、制表符和sprite
字符串操作符
字符串可以用.操作符连接起来
“hello”.”world” #等同于“helloworld”
三、 获取用户输入
由<STDIN>返回的字符串一般在末尾都会带有换行符,通过下面的代码可以看到实际发生的情况:
$line = <STDIN>; if($line eq "\n"){ print "That was just a blank line!"; }else{ print "That line of input was:$line"; }
在实际编写代码时,很少需要保留末尾换行符,所以常常用chomp去掉它
chomp操作符
chomp()操作符只能作用于单个变量,且该变量的内容必须为字符串
$text = “a line of text\n”; #或者从<STDIN>读进来 chomp($text); #去除行末的换行符