\n 如何在 haskell 中的字符列表中工作
How does \n work in Char lists in haskell
现在我有一个等于 "...\n...\n..."
的字符串。在我的代码中,我想把它写成一个列表(比如 ['a','b','c']
),但是它如何与 \n 一起工作?我检查了 ghci if string == ['.','.','.','.','.','.','.','.','.']
,它说没有,所以有谁知道我将如何在 Char 列表中写入 \n,谢谢。
一个 String
是 Char
角色的列表,因此 "foo"
和 ['f', 'o', 'o']
完全相同。
对于 new line character '\n'
[wiki] 你可以逃避这个,所以你的字符串 "...\n...\n..."
相当于:
['.', '.', '.', '\n', '.', '.', '.', '\n', '.', '.', '.']
这里 '\n'
是一个 单个 字符,而不是 两个 :它映射到代码点为 [=17 的 ASCII 字符=] 作为十六进制值(10
作为十进制值)。因此,编译器看到 \n
并将其替换为单个字符。
因此,您可以使用 filter ('\n' /=) some_string
进行过滤,以从 String
.
中过滤掉换行符
现在我有一个等于 "...\n...\n..."
的字符串。在我的代码中,我想把它写成一个列表(比如 ['a','b','c']
),但是它如何与 \n 一起工作?我检查了 ghci if string == ['.','.','.','.','.','.','.','.','.']
,它说没有,所以有谁知道我将如何在 Char 列表中写入 \n,谢谢。
一个 String
是 Char
角色的列表,因此 "foo"
和 ['f', 'o', 'o']
完全相同。
对于 new line character '\n'
[wiki] 你可以逃避这个,所以你的字符串 "...\n...\n..."
相当于:
['.', '.', '.', '\n', '.', '.', '.', '\n', '.', '.', '.']
这里 '\n'
是一个 单个 字符,而不是 两个 :它映射到代码点为 [=17 的 ASCII 字符=] 作为十六进制值(10
作为十进制值)。因此,编译器看到 \n
并将其替换为单个字符。
因此,您可以使用 filter ('\n' /=) some_string
进行过滤,以从 String
.