f# - 换行符和格式化程序

标签 f# string-formatting

我最近因为写一些东西而变得自满,比如

printf "\n%f\n" 3.2

代替
printf "%s%f%s" Environment.NewLine 3.2 Environment.NewLine

我的问题是:有没有办法像第一个版本一样编写安全的第二个版本(即格式字符串中的一个特殊字符,它插入 Environment.Newline 以便格式字符串中的每个换行符实例的参数不是必需的) ?

最佳答案

如何使用 kprintf 进行双 channel ,用 NewLine 替换\n:

let nprintf fmt = Printf.kprintf (fun s -> s.Replace("\n", Environment.NewLine) |> printf "%s") fmt

然后在 nprintf "\n%f\n" 3.2所有\n 都被 NewLine 替换。

关于f# - 换行符和格式化程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5087029/

相关文章:

.net - F# 语言的创建目的是什么?

f# - 值(value)限制问题

gridview - 应用于 gridview 中的边界字段的格式不起作用

java - 选择哪个 log4j facade?

f# - 任何不制作记录值类型的理由

c# - Dictionary<List<_>> 是否符合半持久性?

linux - 如何在 Linux 上使用 nuget 和 fsharp

java - 在 Android 上格式化数字时出现 NoSuchElementException,但在 Java SE 上没有

android - string.xml 中的粗体字符未显示在屏幕上

python - 如何使用 Python 字符串格式将表示美分的整数转换为表示美元的 float ?