看板 Perl 關於我們 聯絡資訊
如題 printf "%-9s\t%5s\t%5s\n",'name','score1','score2'; 輸出長這樣: 姓名 分數A 分數B 小王 88 90 就是名子會靠左對齊,數字會靠右對齊, 我想問的是如果用 print要如何達到相同的結果 因為我是把所有的字串先存成矩陣 ex push(@output,"$name\t$score1\t$score2\n"); print @output; 輸出長這樣: 姓名 分數A 分數B 小王 88 90 但是我只會加入 TAB鍵,所以有沒有類似\t的分隔可以把 分數那邊置右? -- -- ▂▂ ▂▂▂ ▂▄▅▅▄▆█ _█◣ ◢ (●) ◣/\\ 丫 │◥  ̄◤ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.116.215.174
abliou:也許你會需要write跟format搭配$^跟$= 05/25 14:32
dryman:format+1 05/25 15:13
dryman:或是你可以把所有的變數存進array而不是存字串進去 05/25 15:15
liyih:sprintf 可以嗎? 05/25 15:41
frank1983:printf "%-9s\t%5s\t%5s\n", @$_ for (接下行) 05/26 03:20
frank1983:map { [ split /\t/ ] } @output (這樣可以嗎?) 05/26 03:20
abliou:樓上的前輩,如果有人考一百分這樣適用嗎? 05/26 08:39
frank1983:你是在問我嗎:-) ...應該沒有差別吧~ 05/27 01:29
sqrt1089:感謝frank大大了 05/27 17:20