Pesquisando e substituindo texto

Haskell:
Pesquisando e substituindo texto

Como Fazer:

import Data.Text as T

-- Exemplo de função de substituição de texto
substituirTexto :: T.Text -> T.Text -> T.Text -> T.Text
substituirTexto antigo novo = T.replace antigo novo

main :: IO ()
main = do
  let textoOriginal = "Olá mundo! Programação em Haskell é demais!"
  let textoAtualizado = substituirTexto "mundo" "galera" textoOriginal
  putStrLn $ T.unpack textoAtualizado

Saída da amostra:

Olá galera! Programação em Haskell é demais!

Mergulho Profundo

Substituir texto é uma operação tão antiga quanto os primeiros editores de texto. Em Haskell, a biblioteca Data.Text é uma alternativa moderna às Strings tradicionais ([Char]), oferecendo melhor desempenho e funcionalidades prontas como replace. Além disso, existem bibliotecas de expressões regulares como regex-tdfa se as substituições forem mais complexas.

Implementar uma função de substituição eficiente em Haskell pode ser um desafio, porque strings em Haskell são imutáveis. Isso significa que modificar um caractere envolve a criação de uma nova string. No entanto, Data.Text utiliza arrays mutáveis internamente para otimizar operações como substituição.

Veja Também