小文字の文字列を大文字の文字列に変換する
素朴に書くとこんな感じ?
(let1 str "hoge" (list->string (map char-upcase (string->list str))))
シーケンス使えばこう書けるよなーって思ったけど、思ったより短くならなかった。
(use gauche.sequence) (let1 str "hoge" (list->string (map char-upcase str)))
fold使ってみるかーって思ったけど、思ったより汚くなった。
(use gauche.sequence) (let1 str "hoge" (fold (lambda (x y) (string-append y (string (char-upcase x)))) '"" str))
仕方ないので、srfi-13を使った。
(use srfi-13) (let1 str "hoge" (string-upcase str))
文字列に関する処理はだいたいsrfi-13に集まっている感じなので、覚えておくといいですね(まとめ