为什么此perl代码将$ v字符串加1
use strict;
use warnings;
my $v='AAAAAYAQUypALsDz';
print ++$v
而以下内容不是:
use strict;
use warnings;
my $v='AAAAAmGJoD1dlkkt';
print ++$v
我得到参数“ AAAAAmGJoD1dlkkt”不是预增量(++)中的数字
您知道为什么会发生这种情况以及如何使用Perl将此类字符串加1吗?
答案 0 :(得分:0)
正如ikegami所述,perl不会将第二个字符串解释为数字。 所以你可以做
use strict;
use warnings;
my $v='AAAAAmGJoD1dlkkt';
my $v = scalar $v;
print ++$v;
现在,如果您想在字符串末尾添加“ 1”,则应该这样做
$v .= '1';