我试图将字符转换为字符串,如下所示:
Char.toString(#"x")
对于大多数角色来说这是有效的,但是对于"
和\
,在它之前添加了额外的\
:
- Char.toString(#"\"");
val it = "\\\"" : string
这对我来说是不受欢迎的行为。我希望上面的代码片段返回val it = "\"" : string
。 SML中是否有可以执行此操作的内置函数?
来自the documentation of Char.toString
:
如果需要,使用SML转义序列返回字符的可打印字符串表示形式。除#“\”和#“\”之外的可打印字符保持不变。反斜杠#“\”变为“\\”;双引号#“\”“变为”\\“”。[...]
要将字符转换为包含该字符的长度为一的字符串,请使用函数String.str。
并从String.str
的文档:
str c
是包含字符c的大小为1的字符串。
所以str #"\""
将完全按照你的意愿行事。