std.fmt
書式指定 f"{v:...}" で書けないものを補う。桁揃え・ゼロ埋め・桁区切りは書式指定で書けるので、このモジュールは要らない。
import std.fmt; print(fmt.bytes(1536)); // 1.5 KB
- fmt.apply(v: int, spec: string) → string¶
-
書式を実行時に決めて当てる。記法は f"{v:...}" と同じ。
オーバーロード:
fmt.apply(v: float, spec: string) -> stringfmt.apply(v: string, spec: string) -> stringv int 当てる値 spec string 書式("05" ".2f" "x" "," など)。おかしければ、そのまま文字列にする print(fmt.apply(7, "03")); // 007 print(fmt.apply(3.14159, ".2f")); // 3.14 print(fmt.apply("さめ", ">6")); // さめ(表示幅 6 に右寄せ)
- fmt.bytes(v: int) → string¶
-
データ量を読みやすい形にする。
print(fmt.bytes(1536)); // 1.5 KB
- fmt.duration(d: Duration) → string¶
-
期間を読みやすい形にする。
import std.time; print(fmt.duration(time.seconds(3725.0))); // 1時間2分5秒
- fmt.truncate(s: string, width: int) → string¶
-
表示幅で切って … を付ける。全角は 2 と数える。
s string 元の文字列 width int 切ったあとの表示幅 print(fmt.truncate("とても長い名前です", 8)); // とても長…
- fmt.table(rows: list<list<string>>) → string¶
-
列の幅を揃えて表にする。1行目を見出しにはしない。
print(fmt.table([ ["名前", "大きさ"], ["さめ", "400"], ]));