要将字符串编码为XML,xmerl_lib:export_text函数可以完成这项工作,但哪个函数可以完成相反的工作,即将<转换为>?我想转换一个完整的字符串,如:
xmerl_lib:export_text
<
>
<foo="bar">
收件人:
<foo="bar">
irtuqstp1#
我从来没有能够找到一个很好的库,所以我创建了自己的解码函数。
decode(">" ++ Rest) -> ">" ++ decode(Rest); decode("<" ++ Rest) -> "<" ++ decode(Rest); decode(""" ++ Rest) -> "\"" ++ decode(Rest); decode([]) -> [].
根据wikipedia,XML只有五个字符引用,所以支持这五个字符应该没问题:
& → & (ampersand, U+0026) < → < (less-than sign, U+003C) > → > (greater-than sign, U+003E) " → " (quotation mark, U+0022) ' → ' (apostrophe, U+0027)
9rnv2umw2#
exml软件包支持以下功能:https://github.com/paulgray/exml/blob/master/src/exml.erl#L54一般来说,考虑使用exml而不是xmerl,但要知道它是一个基于NIF的解析器。
exml
2条答案
按热度按时间irtuqstp1#
我从来没有能够找到一个很好的库,所以我创建了自己的解码函数。
根据wikipedia,XML只有五个字符引用,所以支持这五个字符应该没问题:
9rnv2umw2#
exml
软件包支持以下功能:https://github.com/paulgray/exml/blob/master/src/exml.erl#L54
一般来说,考虑使用exml而不是xmerl,但要知道它是一个基于NIF的解析器。