Haskell字符串中的换行符?

时间:2011-05-10 00:52:42

标签: string haskell newline

如何在String中创建换行符?是否可以不使用IO ()

formatRow :: Car -> String
formatRow (a, d:ds, c, x:xs) = a ++ " | " ++ x ++ concat xs ++ " | " ++ show c ++ " | " ++ d ++ concat ds ++ (show '\n')

1 个答案:

答案 0 :(得分:55)

要创建包含换行符的字符串,只需编写"\n"

请注意,在其上调用show将转义换行符(或任何其他元字符),因此请勿执行foo ++ (show "\n")foo ++ (show '\n') - 只需使用foo ++ "\n"

另请注意,如果您只是在不使用putStrputStrLn的情况下评估ghci中的字符串表达式,则只会在其上调用show,例如字符串{{1} }将在ghci中显示为"foo\n",但这不会改变这样一个事实,即它是一个包含换行符的字符串,一旦您使用"foo\n"输出它,它就会以这种方式打印。

相关问题