[英]String formatting in Haskell
Haskell 的等价物是什么
string str = string.Format("{0} {1}",10,20); // C#
GHC 中有一个Printf模块。
import Text.Printf
str :: String
str = printf "%d %d" 10 20
但是这样做可能更简单
str = show 10 ++ " " ++ show 20
您可以使用text-format-simple包提供的format
功能:
import Text.Format
format "{0} {1}" [show 10, show 20]
这个函数有签名:
format :: String -> [String] -> String
所以你需要的只是提供你的参数作为字符串。
另一个例子:
format "Some {0} believes that 1 + 1 = {1}." ["people",show 10]
如果有人在 StackOverflow 上的Haskell 中搜索格式化库,请将答案放在这里。 现在有名为fmt
的类型安全和快速格式化库。 有了它,您可以编写如下代码:
> "There are "+|n|+" million bicycles in "+|city|+"."
或者你可以写
unwords [show 10, show 20]
甚至
unwords (map show [10, 20])
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.