当我运行以下代码时,我期望得到3
,但是我得到345
。实现此目标的最佳方法是什么?
#!/usr/bin/env perl
my $input = "12345";
my $number = substr($input, 2, 3);
print $number;
编辑:谢谢大家的回答,现在我误以为它是第一个和最后一个索引。
答案 0 :(得分:2)
substr的第三个参数是字符串长度:
my $number = substr($input, 2, 1);
答案 1 :(得分:2)
substr()的文档指出,第三个参数是您要获取的字符串的长度。
my $input = "12345";
my $num = substr($input, 2, 1);
因此$input
是字符串,2
是偏移量,1
是要提取的字符数(根据文档,是'Length')。
答案 2 :(得分:-1)
只需按照以下步骤进行娱乐即可
use strict;
use warnings;
use feature 'say';
my $input = "12345";
my $number_1 = (split '', $input)[2];
my @number_2 = (split '', $input)[2..4];
say $number_1;
say @number_2;
输出
3
345