文字列を小文字に変換

Haskell:
文字列を小文字に変換

How to: (方法:)

import Data.Char (toLower)

-- 文字を小文字に変換
lowercaseChar :: Char -> Char
lowercaseChar c = toLower c

-- 文字列を小文字に変換
lowercaseStr :: String -> String
lowercaseStr = map toLower

-- 使い方
main :: IO ()
main = do
  let originalStr = "Haskell is Awesome!"
  let lowerStr = lowercaseStr originalStr
  putStrLn lowerStr

出力:

haskell is awesome!

Deep Dive (深堀り)

歴史的背景:

大文字と小文字の区別は、文字が打ち出された印刷術の発展に由来します。Haskellの Data.Char モジュール(toLower関数を含む)は、Unicode 標準に準拠し、多様な文字コードに対応しています。

代替案:

他の方法として Data.Text.toLowertext パッケージから)や自作変換関数を使うことがありますが、 mapData.Char.toLower の組み合わせは簡単で直感的です。

実装の詳細:

toLower はUnicodeの大文字と小文字の対応を考えて設計されているので、英文字だけではなく世界中の言語の文字に適用可能です。

See Also (関連情報)