2009年5月12日星期二

Perl-内容提示

Perl通用法则:如果去掉括号不影响程序的话就可以去掉

标量-1234566==1_234_567,为了便于阅读

字符串-
1,可以包含任意字符,可以把图片,编译好的程序放入字符串中修改

2,没有c中结束的Null

3,单引号中只有反斜杠和单引号需要转义

4,5x4<==> "5"x4<==>"5555"

5,数字和字符串自动转换,字符串转成数字时取第一个数字,其后忽略“44dddee33”*2=88
字符串如无数字转换成0. 字符串中0开头不表示非十进制数字,必须使用hex或org
"Z".3*5="Z15"

6,print "kkk",3*4,"\n"; -是被允许的

布尔值-Perl无布尔值,0=""=undef="0"=false,其余所有都为真. defined 函数可以查询undef值

数组-
1,如果下标超出,返回undef

2,$#ArrayName=得到最后数组元素下标

3,@表引用这整个数组-@rocks=qw/i am a student/; 对起数组前四个赋值

4,foreach $element(@menge)中,$element不是数组元素拷贝,而是其本身

5,sort 不会修改数组本身,需要重新写入 @kk=sort @kk;

6,sort sort_func @array;利用排序函数给数组排序,排序函数中$a,$b值不需要赋值,可以使用三向比较符 "<=>",返回-1,0,1

7,grep 过滤数组值

qw-
1,当作单引号,并忽略空格,分界符可以是任意符号,(),[],{},!!,##............但是要相应转义

2,($fred, $barney) = qw ;只给前两个值,其余舍去

context-
1,@backwards = reverse qw / yabba dabba doo /;
#返回 doo, dabba, yabba
$backwards = reverse qw/ yabba dabba doo /;
#返回 oodabbadabbay

2,@wilma = undef;由于 undef 是一个标量值,将 undef 赋给数组不会清空数组。

文件和目录-
1,opendir/open,readline/readdir,closedir/close

2,readdir得到文件名而不是全路径-***,如果测试文件,需要变成全路径,否则为测试当前路径下文件***

3,unlink,删除文件,其余还有symlink,readlink,mkdir,rmdir,chown,utaimi(改变时间戳)

执行shell-
1,system,exec

2,反引号捕获输出,例如 $now=`date`

环境变量-%ENV{"变量名"}

没有评论:

发表评论

写下你的意见和问题,一起进步。谢谢