Uthenting av delstrenger

Haskell:
Uthenting av delstrenger

Slik gjør du:

I Haskell, brukes ofte take, drop, og substring funksjoner fra Data.Text biblioteket for å håndtere strenger.

import Data.Text as T

main :: IO ()
main = do
  let tekst = T.pack "Hei, Haskell!"
  let delstreng = T.take 3 tekst
  putStrLn $ T.unpack delstreng -- Output: "Hei"

  let hoppOver = T.drop 5 tekst
  putStrLn $ T.unpack hoppOver -- Output: "Haskell!"

  let substr = T.take 7 (T.drop 5 tekst)
  putStrLn $ T.unpack substr -- Output: "Haskell"

Dypdykk

Før Data.Text, Haskell brukte String (som egentlig er en liste av Chars) for tekstbehandling. Men, å jobbe med String var tregt og ineffektivt for store tekster. Derfor ble Data.Text introdusert for å gi en mer effektiv strengbehandling.

Det finnes også biblioteket text som tilbyr funksjonen takeEnd og dropEnd, for å hente ut eller fjerne tegn fra slutten av tekststrenger.

Implementasjonsmessig, Data.Text bruker utf-16 koding intern, som er en balanse mellom effektivitet (sammenlignet med utf-32) og kompakthet (sammenlignet med utf-8 for visse språk).

Se Også