Haskell:
Extracción de subcadenas

Cómo hacerlo:

Aquí tienes ejemplos de cómo extraer subcadenas:

import Data.Text (Text, pack, unpack, take, drop)

-- Crear una función para empaquetar y desempaquetar cadenas
substring :: Int -> Int -> String -> String
substring start end = unpack . take (end - start) . drop start . pack

main :: IO ()
main = do
    let text = "¡Hola, aficionados a Haskell!"
    putStrLn $ substring 7 18 text -- "aficionados"

Salida de la muestra: "aficionados"

Exploración Profunda

Extraer subcadenas es un concepto antiguo, tan viejo como los propios lenguajes de programación. En Haskell, se pueden usar las funciones take y drop del módulo Data.Text para hacer el trabajo, pero hay otras bibliotecas, como Data.ByteString, para diferentes tipos de datos.

La elección entre Data.Text y Data.ByteString depende de si estás trabajando con texto estructurado (como HTML o JSON) o datos binarios. Data.Text está optimizado para Unicode, haciéndolo ideal para texto multilingüe.

Ver También

Para profundizar, aquí hay algunos enlaces: