Perl中的右对齐数字

gth*_*tla 5 perl right-justified

如何在Perl中打印右对齐的数字,如下所示:

a=   1
b=  22
c= 333
d=4444  
Run Code Online (Sandbox Code Playgroud)

Pav*_*mar 10

试试这样吧.

printf ("%4d\n",1);
printf ("%4d\n",11);
printf ("%4d\n",111);
printf ("%4d\n",1111);
Run Code Online (Sandbox Code Playgroud)

  • @gthmatla:如果它解决了你的问题,请记得接受答案. (4认同)

Zai*_*aid 5

官方资源是perldoc -f sprintf ,它有一个很好的例子总结:

例如:

  printf '<% d>',  12;   # prints "< 12>"
  printf '<%+d>',  12;   # prints "<+12>"
  printf '<%6s>',  12;   # prints "<    12>"
  printf '<%-6s>', 12;   # prints "<12    >"
  printf '<%06s>', 12;   # prints "<000012>"
Run Code Online (Sandbox Code Playgroud)


Mat*_*Mat 2

使用printf精度和空格作为“填充符”:

printf "a=% 4d\n", 1;
printf "b=% 4d\n", 22;
Run Code Online (Sandbox Code Playgroud)