本文和大家重点讨论一下Perl双引号和单引号的区别, 在学习Perl语言的过程中,你可能会遇到这样的问题,这里和大家分享一下Perl双引号和单引号各自的特征。
Perl学习笔记 Perl双引号和单引号的区别
在Perl中给字符串加引号有两种:
1)单引号:
e.g.
print'IMISSYOU"SOMUCH"';
它将单引号中的内容包括Perl双引号完整输出,同时即使引号中包含了变量或标量,都将被作为字符处理,如下
$a=5;
print'$a';
结果将输出$a。
2)Perl双引号
如果用下面的语句
print"IMISSYOU"SOMUCH"";
解释器讲提示错误,而下句
print"IMISSYOU\"SOMUCH\"";
通过反斜杠转义之后就可以输出IMISSYOU"SOMUCH"。
3)q,qq
当字符串中包含很多引号时,对引号进行转移时,键入字符串就会很困难,在Perl中有另外一个引号机制,即q和qq运算符,q取代了单引号,qq取代了Perl双引号;
printq(IMISSYOU"SOMUCH");
printqq(IMISSYOU"SOMUCH");
输出结果都将是IMISSYOU"SOMUCH",同时,qq和q运算符可以使用任何非字母、非数字字符来标记字符串的开始和结束,但必须配对出现。
printq/IMISSYOU"SOMUCH"/;
4)Perl双引号起了空格的作用
刚才练习sort函数对数组排序时发现怎么着都不好让它个空个空格出来,但无意中发现Perl双引号就自动将输出的值以空格划分了,可能是我刚知道而已,写下来给自己个提醒。
@number=qw(14232567457890);
@sorted=sort{$a<=>$b;}@number;
print"@number\n";
print"@sorted"。
【编辑推荐】