首页 > 解决方案 > 忽略 F# 中的反斜杠和双引号

问题描述

我们如何忽略字符串中的反斜杠?我试过这个但它不起作用:

let str2 = @"I igonore \ \ \ / / / / backsalshes"
printfn "%s" str2

另外,我认为忽略字符串中的双引号如下:

let str3 = """ "I ig""onore double quotes and backslasehes " """
printfn "%s" str3

同样,它打印了一个带有双引号“ig”“onore”的字符串。怎么了?

标签: f#

解决方案


@符号不会“忽略”反斜杠,因为它们不会出现在字符串中,它只是将它们视为普通字符,而不是具有特殊含义的字符。例如,

let s1 = "\n"  # A single newline character
let s2 = @"\n" # Two characters, a backslash and then a lowercase n

同样,三引号语法不会使"字符消失,它只是让您"在字符串中嵌入单个字符或它们对,而无需跳过语法圈来这样做。如果它使"字符在字符串中消失,那将不是很有用。


推荐阅读