我想将字符串输出到八列,但我想保持间距相同.我不想用HTML做,但我不知道如何正常做.例:
Something Something Something Something Something
Else Else Else Else Else
Another Another Another Another Another
Run Code Online (Sandbox Code Playgroud)
行数将每天更改,但列号将始终保持不变.做这个的最好方式是什么?
mob*_*mob 16
printf "%-11s %-11s %-11s %-11s %-11s %-11s %-11s %-11s\n",
$column1, $column2, ..., $column8;
Run Code Online (Sandbox Code Playgroud)
将模板中的"11"更改为您需要的任何值.
vol*_*ron 11
你可以用Perl's format.这可能是您不理解的"复杂"方法,很可能是因为它为您提供了许多选项(左|中|右对齐/填充,前导0等).
Example:
format STDOUT =
@<<<<<< @|||||| @>>>>>>
"left", "middle", "right"
.
Output:
left middle right
Run Code Online (Sandbox Code Playgroud)
这是另一个教程.
#!/usr/bin/perl -w
use strict;
sub main{
my @arr = (['something1','something2','something3','something4','something5','something6','something7','something8']
,['else1' ,'else2' ,'else3' ,'else4' ,'else5' ,'else6' ,'else7' ,'else8' ]
,['another1' ,'another2' ,'another3' ,'another4' ,'another5' ,'another6' ,'another7' ,'another8' ]
);
for my $row (@arr) {
format STDOUT =
@<<<<<<<<<<<< @<<<<<<<<<<<< @<<<<<<<<<<<< @<<<<<<<<<<<< @<<<<<<<<<<<< @<<<<<<<<<<<< @<<<<<<<<<<<< @<<<<<<<<<<<<
@$row
.
write;
}
}
main();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
39114 次 |
| 最近记录: |