文字列を大文字にする

Haskell:
文字列を大文字にする

どのようにして:

Haskellでは、標準ライブラリを使って、サードパーティのライブラリを必要とせずに文字列を大文字化することができます。

import Data.Char (toUpper, toLower)

capitalize :: String -> String
capitalize "" = ""
capitalize (head:tail) = toUpper head : map toLower tail

-- サンプル使用法:
main = putStrLn $ capitalize "hello world"

出力:

Hello world

より複雑なシナリオや使いやすさを求める場合は、Haskellで効率的な文字列操作に人気のあるtextというサードパーティライブラリの使用を検討したいかもしれません。

まず、プロジェクトの依存関係にtextを追加する必要があります。その後、以下のようにしてその機能を使用して文字列を大文字化します:

import qualified Data.Text as T
import Data.Char (toUpper)

capitalizeText :: T.Text -> T.Text
capitalizeText text = case T.uncons text of
    Nothing -> T.empty
    Just (first, rest) -> T.cons (toUpper first) (T.toLower rest)

-- textライブラリを使用したサンプル使用法:
main = putStrLn $ T.unpack $ capitalizeText (T.pack "hello world")

出力:

Hello world

これらの例は、サードパーティライブラリを使用するかどうかにかかわらず、Haskellで文字列を大文字化するためのシンプルで効果的な方法を示しています。