如何将haskell unicode字符串解析为unicode字符

Eva*_*ian 2 haskell

String在Haskell中代表一个unicode字符,比如说"\\x00a0",我想把它转换成Char(在这种情况下为'\ x00a0').

我最后一次失败的尝试是将read它作为Int,然后Data.Char.chr用来转换回Char.它适用于八进制文字,"\\xxx"但不适用于Unicode.

有人可以给我指点吗?

Ry-*_*Ry- 5

Data.Char包含readLitChar,它将适用于任何Haskell字符串转义序列(当然除了间隙和分隔符):

Prelude Data.Char> readLitChar "\\x00a0"
[('\160',"")]
Run Code Online (Sandbox Code Playgroud)