一、Perl的环境准备 Linux/Unix:大多数内置 一些软件也内置perl, Windows:ActivePerl5.10.0 Perl的工具 二、编辑工具: notepad++、ultraedit, 三、变量。 不像C语言一样,perl无需指定数据类型。 1、 perl的四种变量 Scalar:标量,以$开始,后面以字母或_开 头,再后面可以是字母或数字; array:数组,列表,以@开头; Hash: 哈希,散列,以%开头 文件: 2、变量特征 大写字母 区分大小写:$Var,$VAR,$var 内置变量 /,$@、@ARGV、$_等 3、字符串变量 由双引号或单引号标识的一组字符组成;最少0个字符(“”为空串),最多可以占满内存, "${str}ing"=$str +ing" !=$string 记住一些常用的转义字符像.。加上则$var不是系统内置变量了。 print“the \$var is $var.” 注意单引号的用法:不替换、不转义 $var="str”; print “this is $var";# ”this is str”赋值的变量的内容 print ‘this is $var'; # ‘this is $var'系统内置变量 4、变量初值 未创建时状态为undef,到达文件尾也为undef。 5、函数 length():字符串长度 uc,lc,ucfirst,lcfirst:改变大小写函数 substr,index,pos:字符串函数 sin等三角函数 rand(),srand():随机发生函数 chop函数: $lastchar =chop($str)#截去最后一个字符 chomp函数:$result=chomp($str)#截去末尾的行分隔符(通常 为”
”),行分隔符由$/定义 die函数:在控制台标准错误输出信息后退出程序。 warn: 输出信息后不退出程序,只起警报作用。 $!:内部变量,包含错误代码。 $@:内部变量,包含错误信息。 6、控制结构
if(condition1){} elsif(condition2){}else{}} unless(){} until(){} do{} until() while(){} do{} while() for(;;){} foreach循环语句 示例: foreach $a(@a){statement;}#用于循环数组,每一行存储到$a中 foreach $a(1,2,3,4){}用于列表 foreach $k(keys %h){}用于哈希/散列 foreach $a(@a[1,2,4]){}仅对数组部分元素 foreach (@a){}缺省循环变量为$_ 7、 循环控制 last:退出循环 next:进入下一循环 redo:重新执行本次循环 goto:跳转 8、列表——数组的形式 形式:(1,”a”,2.3,$a,$x+1),其元素可以是数 字、字符串、变量、表达式; 空列表(),单元素列表(2)不同于标量2; qw(1 $a str) :()可以用其他符号表示,如<> 元素可以是数值、变量、不带引号的字符串, 中间用空格分开 9、数组——列表的存储 @a=(1,2,3),不同于$a,初始值为(); 元素形式:$a[0]表示第一个元素,索引从0开始, $a[‐1]表示倒数第一个元素; 数组的赋值: @a=(1,2,3,4);@b=@a; @b=(2,3);@a=(1,@a,4); @a=<>;#从屏幕输入进行赋值,按下CTRL‐d结束; 改变元素的值:$a[1]=3; 超出数组大小的元素赋值:$a[5]=6;#自动增长,其他元 素为NULL; 10、 数组的读出 @a=(1,2,3); $a=$a[1]; ($x,$y,$z)=@a;=>$x=1,$y=2,$z=3; ($x,$y)=@a;=> $x=1,$y=2; ($a,$b,$c,$d)=@a;=> $a=1,$b=2,$c=3,$d=“”; $a=@a=$#a+1;#$a为数组长度,$#a为数组的最后一个元 素的索引 ($a)=@a;#数组的第一个元素$a[0] 打印数组:print @a;#元素直接相连; print“@a”;#元素之间用空格分开
|