Perl对于变量的定义,分为三种类型:标量、数组和哈希。
标量是 Perl 语言中最简单的一种数据类型。标量中可以存储整数、字符串、浮点数、字符等,数据格式不做严格区分。在使用标量时需要再变量前面加$,如:
perl">#! /usr/bin/perl
$a='a'; #字符
$b=100; #整数
$c=23.56; #浮点数
$data="hello,world"; #字符串
print "a=$a\n";
print "b=$b\n";
print "c=$c\n";
print "data=$data\n";
$a=$b; #赋值
print "a=$a\n";
$a=$data;#将字符串赋值给a
print "a=$a\n";
$data.="追加字符串示例!";#字符串拼接
print "data=$data\n";
运行效果:
perl">[wbyq@wbyq 0709]$ ./1.pl
a=a
b=100`在这里插入代码片`
c=23.56
data=hello,world
a=100
a=hello,world
data=hello,world追加字符串示例!
1.标量之间的简单运算
perl">#! /usr/bin/perl
$a=3+4;
print "\$a=$a\n"; #要输出$则需要转义
$data+=$a;
print "data=$data\n"; #data=data+a
$data="hello";
$a=$data . $a;#将字符串和数字拼接
print "a=$a\n";
$str1="hello";
$str2="world";
$data=$str1.",".$str2; #字符串拼接
print "data=$data\n";
$data.="追加字符串";
print "data=$data\n";
运行示例:
perl">[wbyq@wbyq 0709]$ ./1.pl
$a=7
data=7
a=hello7
data=hello,world
data=hello,world追加字符串
点号(.)用来实现字符串之间的拼接。
2.Here 文档
Here文档又称作heredoc、hereis、here-字串或here-脚本,是一种在命令行shell(如sh、csh、ksh、bash、PowerShell和zsh)和程序语言(像Perl、PHP、Python和Ruby)里定义一个字串的方法。
perl">#! /usr/bin/perl
print <<EOF;
字符串输出,遇到EOF退出
EOF必须定格,后面不能跟其它内容
EOF
print "\n";
print <<C
"字符串输出,结束符可以换做其它标志"
标志符必须在一行的起始位置,且后面不能有任何内容
C
运行效果:
perl">[wbyq@wbyq 0709]$ ./1.pl
字符串输出,遇到EOF退出
EOF必须定格,后面不能跟其它内容
"字符串输出,结束符可以换做其它标志"
标志符必须在一行的起始位置,且后面不能有任何内容
3.特殊字符
perl">#! /usr/bin/perl
print "文件名:__FILE__\n"; #写在""中无法解析
print "文件名:" .__FILE__. "\n"; #需要加"."进行拼接
$line=__LINE__ ;#行号,赋值给变量line
print "行号显示:$line\n";
print "包名:".__PACKAGE__."\n";
运行效果:
perl">[wbyq@wbyq 0709]$ ./1.pl
文件名:__FILE__
文件名:./1.pl
行号显示:4
包名:main
4.v字符串
v97 表示ASCII值97,则可输出字符’a’,其它类似如此效果。
perl">#! /usr/bin/perl
$smile = v97.9786; #表示ASCII码,97对应字符'a',9786对应笑脸
$wbyq = v102.98;
$martin = v77.97.114.116.105.110;
print "smile=$smile\n";
print "wbyq=$wbyq\n";
print "martin=$martin\n";
运行效果:
perl">[wbyq@wbyq 0709]$ ./1.pl
Wide character in print at ./1.pl line 5.
smile=a☺
wbyq=fb
martin=Martin