Comment detail

文字列のセンタリング (Nested Flatten)
実行例:
arc> (centering "hoge" 10)
"   hoge   "
arc> (centering "hogefuga" 5)
"ogefu"
1
2
3
4
5
6
7
(def mklist (n (o fill nil)) (map (fn (x) fill) (range 1 n)))

(def centering (str length)
  (withs (plen (- length (len str)) tlen (abs plen) l (trunc (/ tlen 2)) r (- tlen l))
    (if (positive plen)
        (string (mklist l #\space) str (mklist r #\space))
        (cut str l (- (len str) r)))))

Index

Feed

Other

Link

Pathtraq

loading...