我遇到了一些问题。最初,我有以下格式的输入:
12345 apple
12 orange
我将第一列保存为 $num,将第二列保存为 $fruit。我希望输出看起来像这样(见下文)。我希望输出对齐,就好像 $num 的长度一样。实际上,$num 将由可变长度的数字组成。
12345 apple
12 orange
按照建议,我使用以下代码:
$line = sprintf "%--10s %-20s", $num, $fruit;
此解决方案在命令行显示中效果很好,但是当我尝试通过 HTML 显示此格式时,不会保留此格式。例如..
print "<html><head></head><body>
$line
</body></html>";
这会产生与格式化前的原始输出相同的输出。你们对我如何在基于 web 的 html 显示中保留 sprintf 格式有什么建议吗?我尝试用空格填充 $num,但以下代码似乎对我不起作用。
$num .= (" " x (10 - length($num)));
无论如何,我将不胜感激任何建议。谢谢!