文字列のセンタリング
Posted feedbacks - Arc
実行例:
arc> (centering "hoge" 10)
" hoge "
arc> (centering "hogefuga" 5)
"ogefu"
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)))))
|


nobsun
#4089()
Rating0/2=0.00
文字列を指定のカラム幅にセンタリング配置する関数を示してください。文字列の長さが指定した幅より長い場合には文字列の両端をできるだけ均等に切り落して指定幅に収めてください。1文字は1カラムに収まるものと仮定してかまいません。
[ reply ]