tho*_*oud 1 perl special-characters
我有一个数组,我正在尝试打印出来(用于获取SQL数据库信息):
my $variables_array = [[u1, answer1, Uvalue], ["v1", u2, v2, answer2, Vvalue]];
Run Code Online (Sandbox Code Playgroud)
当我打印出$variables_array所有变量,除了v2打印出我上面的格式.我搜索了google/SO,但v#在Perl中找不到任何特殊意义.我注意到记事本++改变了v#数组数组中的颜色,表明它是某种特殊变量,但我不知道它是什么?有人可以为我阐明一下,我很困惑.
Perl有很多不同的文字
123,123.0,1.23e2,0x7b"abc",'abc',q/abc/,...Foo::Bar->new()strict 'refs',不表示sub的裸字被视为字符串.=>总是自动引用-abc eq "-abc"v1.2.3V字符串由一系列由句点分隔的数字组成.每个数字都被翻译成相应的字符.由于他们是字符串,他们可以进行比较lt,gt等等.
它们适用于IP地址或版本号.它们不适合打印出来,因为低数字表示不可打印的字符.
$ perl -E'say v49.50.51'
123
Run Code Online (Sandbox Code Playgroud)
这个故事的主旨?总是use strict; use warnings;,也许看看qw//引用运算符:
my $variables_array = [[qw/u1 answer1 Uvalue/], [qw/v1 u2 v2 answer2 Vvalue/]];
# or verbose:
my $variables_array = [['u1', 'answer1', 'Uvalue'], ['v1', 'u2', 'v2', 'answer2', 'Vvalue']];
Run Code Online (Sandbox Code Playgroud)
(qw不插入,在任何空格处拆分字符串,并且等于字符串列表)