Haskell:
Gör om en sträng till versaler
Hur man gör:
I Haskell kan du förstora en sträng med hjälp av standardbiblioteket utan att behöva några tredjepartsbibliotek.
import Data.Char (toUpper, toLower)
capitalize :: String -> String
capitalize "" = ""
capitalize (head:tail) = toUpper head : map toLower tail
-- Exempel på användning:
main = putStrLn $ capitalize "hello world"
Utdata:
Hello world
För mer komplexa scenarier eller för enkelhetens skull kanske du vill använda ett tredjepartsbibliotek som text
, som är populärt för effektiv strängmanipulering i Haskell.
Först måste du lägga till text
i ditt projekts beroenden. Sedan kan du använda dess funktioner för att förstora en sträng som följer:
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)
-- Exempel på användning med textbiblioteket:
main = putStrLn $ T.unpack $ capitalizeText (T.pack "hello world")
Utdata:
Hello world
Båda dessa exempel demonstrerar enkla men effektiva sätt att förstora en sträng i Haskell, med eller utan tredjepartsbibliotek.