给字符串加双引号和单引号的主要差别是:
(1) 使用单引号的字符串含义是非常直观的,单引号字符串中的每个字符就是表示它自己的含义。在双引号中的字符串中, Perl 要查看是否存在变量名或转义序列。
转义序列是一些特殊字符串,你可以将难以键入和以后难以识别的字符嵌入字符串。
(2) 如果 Perl 在双引号字符串中找到了一个变量,那么它将被内插替换。这就是说,双引号字符串中的变量名将被它的实际值代替,为了防止变量查找的字符串被内插替换,可以使用单引号(它不进行任何形式的内插替换),也可以在变量标识符的前面加上一个反斜杠:
$usr_name
=
"
zgl_dm
"
;
print
"
The name is $usr_name
"
;
print
'
The name is $usr_name
'
;
(1) 使用单引号的字符串含义是非常直观的,单引号字符串中的每个字符就是表示它自己的含义。在双引号中的字符串中, Perl 要查看是否存在变量名或转义序列。
转义序列是一些特殊字符串,你可以将难以键入和以后难以识别的字符嵌入字符串。
(2) 如果 Perl 在双引号字符串中找到了一个变量,那么它将被内插替换。这就是说,双引号字符串中的变量名将被它的实际值代替,为了防止变量查找的字符串被内插替换,可以使用单引号(它不进行任何形式的内插替换),也可以在变量标识符的前面加上一个反斜杠:
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/6810355c2f78c12e91b7997a8e8c583a.gif)