加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

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

发布时间:2020-12-15 21:01:25 所属栏目:大数据 来源:网络整理
导读:? ? ? ? 从11月13日-11月15日花了三天时间读完了《Perl语言入门(第五版)》中文版,不得不钦佩Larry Wall的敏捷才气,不同于python,java,c,erlang,不知从哪里想出来那么多奇怪的符号来表示变量,但不过还算好用,但初期总是很难记,于是我觉得总结一下,

? ? ? ? 从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,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? [ftnr ]

#h? [t ] 5.010

#v? [fnr] 5.010

#[dD] 匹配任何字符

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

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

#b 单词边界锚位

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

$`??? 匹配前的变量,

$’??? 匹配后的变量

if("hello world!hao are you"=~/sw+!/){

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

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

}

12、@_ ?????输入参数变量

sub max{

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

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

?????? print "The num1 is $num1,nThe num2is $num2n";

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

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

?????? print "The num3 is $num3,nThe num4is $num4n";

?????? print "The num5 is $num5,nThe num6is $num6n";

}

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

@ARGV="d:text.txt";

#$^I=".bak";

while(<>){

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

?????? print;

?????? }

14、$@? ??存储错误信息

eval{

$a=$b=5;

???$b=$a/0;

};

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读