带前导零的 Perl 数字序列
Perl sequence of numbers with leading zeros
是否有一些简单的方法(没有 sprintf
,当然还有 printf
)在 Perl 中获取 (001, 002, ... 100)
的列表?
在 bash 中,它类似于 seq -w 1 100
。 Perl 呢?
你的意思是这样的?
for ('001'..'100') {
print "$_\n";
}
..
在一个范围内,returns 一个值列表,从左值到右值。
更多range的使用方法请参考:
Perldoc range operator and this link
Printf 就是为解决此类问题而创建的。使用它可以帮助您更快地获得想要的答案。
foreach my $number ( 1 .. 100 ) {
printf "%03d\n", $number;
}
%
是 "begin a format sequence"
0
是 "leading zeros"
3
是 "three digits minimum"
d
是 "treat the parameter as digits (integer)"
是否有一些简单的方法(没有 sprintf
,当然还有 printf
)在 Perl 中获取 (001, 002, ... 100)
的列表?
在 bash 中,它类似于 seq -w 1 100
。 Perl 呢?
你的意思是这样的?
for ('001'..'100') {
print "$_\n";
}
..
在一个范围内,returns 一个值列表,从左值到右值。
更多range的使用方法请参考: Perldoc range operator and this link
Printf 就是为解决此类问题而创建的。使用它可以帮助您更快地获得想要的答案。
foreach my $number ( 1 .. 100 ) {
printf "%03d\n", $number;
}
%
是 "begin a format sequence"
0
是 "leading zeros"
3
是 "three digits minimum"
d
是 "treat the parameter as digits (integer)"