我正在使用epgsql
Erlang 查询数据库。它返回字符串结果包括它们周围像这样引号:"what_was_in_the_row"
。如何在处理结果之前删除这些引号?
控制格式~p
(漂亮的打印)保留有关打印的变量类型的信息。您正在打印一个字符串,例如,在 erlang 中,由可打印字符组成的标准整数列表[101,102,103]
显示为"efg"
在 shell 中。
如果你调用io_lib:format("~p",[[101,102,103]]).
,你会得到["\"efg\""]
需要一些解释的结果。
io_lib:format/2
,\"
是一个表示单个字符的转义序列“您可以评估每个字符串的长度以验证差异:
如果要获取不带引号的字符串,必须使用控制格式 ~s
1> [Res] = io_lib:format("~s",[[101,102,103]]).
["efg"]
2> length(Res).
3
3> [Res] = io_lib:format("~s",[Res]).
["efg"]
Run Code Online (Sandbox Code Playgroud)
当然,最后一行表明我的例子很愚蠢。使用io_lib:format("~s ~s!",["Hello","world"]).
或更复杂的格式,结果的类型为chars()
:char()
或的列表chars()
。
归档时间: |
|
查看次数: |
963 次 |
最近记录: |