Xml 移除&;引用和列表的元素(erlang)

Xml 移除&;引用和列表的元素(erlang),xml,string,functional-programming,erlang,ejabberd,Xml,String,Functional Programming,Erlang,Ejabberd,我有一个要显示为字符串的记录列表,然后传递给XML属性: Li = (get the record), 看起来像: ?INFO_MSG("LIST::::: ~p~n", [?SETS:to_list(Li)]), [{"9993939","some.com",[]}, {"12341234","some.com",[]}] 我使用以下方法删除了一些重复项: Li = ?SETS:to_list(List) Set = sets:from_list(Li) O = sets:to_list(

我有一个要显示为字符串的记录列表,然后传递给XML属性:

Li = (get the record),
看起来像:

?INFO_MSG("LIST::::: ~p~n", [?SETS:to_list(Li)]),
[{"9993939","some.com",[]}, {"12341234","some.com",[]}]
我使用以下方法删除了一些重复项:

Li = ?SETS:to_list(List)
Set = sets:from_list(Li)
O = sets:to_list(Set)
在此之后,我使用io_lib:format获取最终字符串:

OO = io_lib:format("~p", [O])
但当我将其提供给XML时,它会附带"e;人物

"[{& quote;9993939& quote;,& quote;some.com& quote;,[]},{&
quote;12341234&& quote;,& quote;some.com& quote;,[]}]"
如何删除这些字符

实际上我的最终目标是

由此:

"[{"9993939","some.com",[]}, {"12341234","some.com",[]}]"
仅获取列表上的数字:

"[9993939,12341234]"

你的问题很模糊。。。很难理解,但这是你想要的吗

-module(vague).
-compile(export_all).

extract(Li)->
    [Element || {ok, [Element],[]} <- [io_lib:fread("~d", Projection) ||
                                          {Projection, _, _} <- Li]].


1> vague:extract([{"9993939","some.com",[]}, {"12341234","some.com",[]}]).
   [9993939, 12341234]
-模块(模糊)。
-编译(全部导出)。
摘录(Li)->

[Element | |{好的,[Element],]}你能发布实际的代码吗?这非常混乱。你是否尝试在io|lib:format上使用~s而不是~p?是的,但仍然得到了“这是我想要的,但是我如何删除”的“而不是”?。这是我用来将其转换为字符串OO=list:flatte(io|lib:format(“~p”,[ListO])的代码,但它显示为“[";9993939";,";12341234";]”好的,这有助于我解决这个问题。通过修改响应查看,它可能会更有帮助