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

时间:2014-08-22 16:56:02

标签: haskell

我有一个String表示Haskell中的unicode字符,比如"\\x00a0",我想将其转换为Char(在这种情况下为'\ x00a0')。

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

有人能指点我吗?

1 个答案:

答案 0 :(得分:5)

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

Prelude Data.Char> readLitChar "\\x00a0"
[('\160',"")]