perl的基础知识总结-----难记但有用特殊符号

        从11月13日-11月15日花了三天时间读完了《Perl语言入门(第五版)》中文版,不得不钦佩Larry Wall的敏捷才气,不同于python,java,c,erlang,不知从哪里想出来那么多奇怪的符号来表示变量,但不过还算好用,但初期总是很难记,于是我觉得总结一下,最好不过,便于以后查阅。闲话少说,进入正题。


1、$     以$号开头,标量定义,如:$num =1;

2、@    以@开头,数组定义,如:@array = (1,2,3);数组元素调用 $array[index],其中index表示数组下标,如上例,$array[0]的值是1

3、%   以%开头,散列定义;

4、$#    在列表中 @array=(1,2,3); print  $#array."\n"; #输出最后下标

   $num=@array;#返回列表元素个数

5、..    @array=(1..5); print @array;#范围操作符输出12345

6、qw    print qw(one,two,three);#单词列表输出('one','two','three')

7、$_    老地方变量

foreach(1..10){

    print "数一数 $_ \n"; #$_老地方变量

}

$_="特殊变量";

print ;

8、@ARGV    保存命令行参数

9、$!     错误信息变量

if(!openLOG,">>d:\\text.txt "){

    die "cannot create logfile:$!";

       }#$!可读的系统出错信息

printLOG "ok!";

10、常用正则表达式

#\d  [0-9]

#\w  [A-Za-z0-9_]

#\s  [\f\t\n\r ]

#\h  [\t ] 5.010

#\v  [\f\n\r] 5.010

#[\d\D] 匹配任何字符

#. 匹配出换行符以外任何字符

#/^\s*$/匹配空白行

#\b 单词边界锚位

11、$&    用来表示匹配的值

$`    匹配前的变量,

$’    匹配后的变量

if("hello world!hao are you"=~/\s\w+!/){

    say "it mached $&!";#$&用来表示匹配的值

       say "before was ($`),after was($')";

}

12、@_      输入参数变量

sub max{

    my($num1)=@_;#第一个参数

       my $num2=@_;#参数的个数

       print "The num1 is $num1,\nThe num2is $num2\n";

       my ($num3,$num4)=@_;#前两个参数

       my $num5,$num6=@_;#my只对num5起作用

       print "The num3 is $num3,\nThe num4is $num4\n";

       print "The num5 is $num5,\nThe num6is $num6\n";

}

13、$^I    备份修给生成新文件

@ARGV="d:\\text.txt";

#$^I=".bak";

while(<>){

#此处输入替换的正则表达式 

       print;

       }

14、$@    存储错误信息

eval{

$a=$b=5;

   $b=$a/0;

};

print  "The error is $@" if $@;#$@存储错误信息!!

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值