F# 中内插字符串中的嵌入字符串
Embedded Strings in Interpolated Strings in F#
我似乎无法弄清楚如何在 F# 中的内插字符串中嵌入字符串。从表面上看,它与 C# 非常相似。例如,在 C# 中我会写类似
Console.WriteLine($"Truly, it is {(string.IsNullOrEmpty("") ? "" : "not ")}empty.");
//Result: Truly, it is empty. OR Truly, it is not empty.
大括号内的括号允许我在插值表达式中嵌入额外的字符串文字。
我试图用
在 F# 中复制它
printfn $"Truly it is {(match (String.IsNullOrEmpty "l") with | true -> "" | false -> "not ")}empty."
包裹内插表达式的括号似乎没有完成同样的事情。它建议对内插匹配表达式使用显式 let
绑定,但出于学习目的,我想在一行中完成。
有没有办法在 F# 中执行此操作,或者我是否坚持为嵌入式三元定义 let
?
使用三引号字符串:
printfn $"""Truly it is {match (String.IsNullOrEmpty "l") with | true -> "" | false -> "not "}empty."""
我似乎无法弄清楚如何在 F# 中的内插字符串中嵌入字符串。从表面上看,它与 C# 非常相似。例如,在 C# 中我会写类似
Console.WriteLine($"Truly, it is {(string.IsNullOrEmpty("") ? "" : "not ")}empty.");
//Result: Truly, it is empty. OR Truly, it is not empty.
大括号内的括号允许我在插值表达式中嵌入额外的字符串文字。
我试图用
在 F# 中复制它printfn $"Truly it is {(match (String.IsNullOrEmpty "l") with | true -> "" | false -> "not ")}empty."
包裹内插表达式的括号似乎没有完成同样的事情。它建议对内插匹配表达式使用显式 let
绑定,但出于学习目的,我想在一行中完成。
有没有办法在 F# 中执行此操作,或者我是否坚持为嵌入式三元定义 let
?
使用三引号字符串:
printfn $"""Truly it is {match (String.IsNullOrEmpty "l") with | true -> "" | false -> "not "}empty."""