由于公司需要,本人最近在学习Perl这种脚本语言,本文是我在学习Perl的过程中总结出来的一些心得和笔记,希望能够帮助也在学习Perl的各位同僚。废话不多说直接上干货!!!
———————————————————————————干货分割线 —————————————————————————
标量变量:$a (区分大小写)
P e r l与某些其他编程语言不同,P e r l中的标量变量在你使用它们之前,不必预先进行声明或初始化。若要创建一个标量变量,只要使用它就行了。当使用一个未经初始化的变量时,P e r l将使用它的默认值。如果它被用作数字时(如数学运算中的数字),P e r l将使用0(零)这个值;如果它被用作字符串(几乎其他任何地方都使用),那么Perl将使用“ ”这个值,即空字符串。
Perl执行顺序为:从顶部到底部顺序执行,并不像c++或者Java那样有main()主函数。
双引号运算符:“”:双引号运算符有一个特性--变量内插:即双引号字符串中的变量名将被它的实际值代替。若不想变量内插,可以在变量前加反斜杠\或者使用单引号。
Exp:
$name = “John”;
Print “I went to the store with $name.”;
输出:I went to the store with John。
qq运算符:
qq(I said, ”Go then,”and he said “I’m gone”);
q q取代了双引号。这个机制的作用几乎在所有方面都与双引号完全一样。也可以用q运算符来代替单引号将文本括起来:
q(Tom’s lite wedged in Sue’tree);
q q和q运算符可以使用任何非字母、非数字字符来标记字符串的开始和结束。这些标记称为界限符。在前面这个例子中使用了括号,不过也可以使用任何其他的非字母或非数字字符作为界限符:
qq/I said, ”Go then,”and he said “I’m gone”/;
q.Tom’s lite wedged in Sue’tree.;
并值运算符.:将多个字符串合并在一起
$a = “Hello,ErGouZi。”;
$b = “Nice to meet you!”;
$c = $a.$b;
输出:Hello,ErGouZi。Nice to meet you!
如果P e r l不能清楚地指明变量名在何处结束和字符串的其余部分从何处开始,那么可以使用花括号将变量名括起来。使用这个句法, P e r l就能够找到可能模糊的变量名:
$date = “Thurs”;
print “I went to the fair on ${date}day”;
如果没有花括号,Perl将不知道是要对双引号中的$ date还是对变量$dateday进行内插替换。加上花括号后,内插替换的对象就清楚了。
重复运算符x:运算符x配有两个参数,一个是要重复的字符串,另一个是该字符串重复的次数,请看下面这个例子:
$line = “-”x 70;
在上面这个例子中,字符-被运算符x重复7 0次。其结果存放在$ l i n e中。
一些带名字的运算符:
带名字的一目减运算符的操作数前后的括号是可有可无的,但是为了清楚起见,表2 - 4中都将括号显示了出来。由于P e r l中带名字的运算符和函数看上去非常相似,因此带名字的运算符的操作数有时也称为变元,这是P e r l函数用于它们的参数的一个术语。
递增运算符++:
字符串的最后一个(最右边的)字符被递增。如果它是个字母字符,它将成为序列中的下一个字母;如果它是个数字,那么该数字将递增1。
Exp:
$a = “c9”;
$a++;
结果:$a = d0 (9+1 =10.carry 1 to the c)
$a = “zzz”;
$a++;
结果:$a = aaaa
尖括号运算符< >:有时也称为菱形运算符,主要用于读写文件.从标准输入设备(通常是键盘)读取一行输入信息。< S T D I N >表达式返回从键盘读取的这行信息:
Print “what size is your shoe?”;
$size = <STDIN>;
Print “Your shoe size is $size Thank U”;
结果输出:
可以看到,结果自动换行了,若不希望在字符串的结尾处出现换行符,要删除换行符,可以像下面这样使用chomp运算符:
print "what size is your shoe?\n";
$size = <STDIN>;
chomp $size;
print "your shoe size is $size Thank U";
chomp运算符能够删除它的参数结尾处的任何换行符。它返回被删除的字符数,这个数字通常是1,但是,有时如果没有字符需要删除,那么返回的是0。
赋值运算符中的特殊情况:
如果某个元素看上去不像一个数字,但是你将它用在需要数字的地方,那么P e r l在它的位置上使用0这个值:
$a = “Hello ,world”;
print”$a + 6”;
输出:6,但是,如果你激活了警告特性,那么如果你这样操作的话, P e r l就会发出警告消息。
#!/usr/bin/perl -w