我知道这听起来很简单,但我没能将两个字符串组合成一个新字符串。
来自 gtk 条目的 IO 字符串“a”由
a <- (entryGetText text_field)
目标是将其组合为:
newstring = "文本:"+a
有什么想法可以实现吗?谢谢!
使用字符串连接:
do a <- entryGetText text_field
let b = "Text:" ++ a
return b
更简单地说:
do a <- entryGetText text_field
return $ "Text:" ++ a
你也可以玩游戏:
("Text:" ++) <$> (entryGetText text_field)
我相信在 Haskell 中,字符串连接运算符是++
.
当您将赋值运算符x <- expr
与某个 monad 一起使用时,expr :: m a
它不是 an而是 an 。在您的情况下,该变量具有 type而不是,因此您可以像在纯代码中那样将其连接起来,例如.m
x
m a
a
a
String
IO String
"hello world " ++ a