Haskell:
Konwersja ciągu znaków na małe litery
How to: (Jak to zrobić?)
W Haskellu możesz użyć funkcji toLower
z modułu Data.Char
, aby przekształcić pojedynczy znak na małą literę. Aby przekształcić cały ciąg znaków, wykorzystaj funkcję map
.
import Data.Char (toLower)
convertToLower :: String -> String
convertToLower str = map toLower str
-- Przykład użycia:
main :: IO ()
main = putStrLn $ convertToLower "Hello, Haskell!"
Output:
hello, haskell!
Deep Dive (Dogłębna analiza)
Konwersja na małe litery istniała od dawna w programowaniu. W językach obsługujących Unicode, jak Haskell, uwzględnia ona wiele skomplikowanych reguł związanych z różnymi systemami pisma. Alternatywą do map toLower
może być użycie funkcji toCaseFold
, która jest bliższa funkcjonalności toLowerCase
z innych języków — obsługuje więcej przypadków niż same małe litery.
Implementacja toLower
w Haskellu z modułu Data.Char
korzysta z własności Unicode, aby przejrzeć wszelkie literowe odpowiedniki. Jest to ważne w kontekście międzynarodowym, gdzie tekst może zawierać znaki poza prostym alfabetem ASCII.
See Also (Zobacz również)
- Hackage: Data.Char - dokumentacja modułu
Data.Char
. - Haskell Language Report: Textual Data - specyfikacja języka Haskell dotycząca danych tekstowych.