Haskell:
Søking og erstatting av tekst
Hvordan:
I Haskell kan tekst søkes og erstattes ved hjelp av funksjoner fra standardbiblioteket, for eksempel Data.Text
som håndterer strengdata effektivt.
import Data.Text (replace, pack, unpack)
-- Definerer en enkel erstatningsfunksjon
searchAndReplace :: String -> String -> String -> String
searchAndReplace old new = unpack . replace (pack old) (pack new) . pack
-- Eksempelbruk
main :: IO ()
main = putStrLn $ searchAndReplace "verden" "Norge" "Hallo, verden!"
-- Forventet resultat
-- "Hallo, Norge!"
Dypdykk
Historisk har tekstmanipulasjon vært en kjernefunksjon i programmering. Funksjoner som sed
i Unix har gjort dette lenge. I Haskell, som er funksjonell, brukes ofte biblioteker som Data.Text
for effektivitet, siden standard String
kan være langsom for store datamengder. Et alternativ er regex-tdfa
-pakken for komplekse søkemønstre. Implementasjonen bruker lazy evaluation, noe som betyr at beregninger blir utsatt til resultatet er nødvendig.