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å
Data.Textdokumentasjon: https://hackage.haskell.org/package/text-1.2.3.1/docs/Data-Text.html- Et Haskell-kurs for de som vil lære mer: http://learnyouahaskell.com/chapters
- Haskell offisielle side: https://www.haskell.org/