Esiste un'API di alto livello per eseguire ricerche e sostituzioni con espressioni regex in Haskell? In particolare, sto osservando i pacchetti Text.Regex.TDFA
o Text.Regex.Posix
. Mi piacerebbe davvero come qualcosa di tipo:sostituzione/sottostringa con le librerie regex di Haskell
f :: Regex -> (ResultInfo -> m String) -> String -> m String
così, ad esempio, di sostituire "cane" con "gatto" si potrebbe scrivere
runIdentity . f "dog" (return . const "cat") -- :: String -> String
o fare cose più avanzate con la monade, come conteggio di occorrenze, ecc.
La documentazione di Haskell per questo è piuttosto carente. Alcune note API di basso livello sono here.