You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用XPath 3.1对节点文本进行JSON转义生成JSON字符串?

用XPath 3.1实现XML节点文本的JSON转义

问题场景

给定如下XML节点:

<xml>&lt;Hello world "&amp;" foo bar&gt;</xml>

调用string(/xml)得到的文本为:<Hello world "&" foo bar>,需要将其处理为符合JSON字符串规范的形式,最终结果如下:

"<Hello world \"&\" foo bar>"

实现方案

在XPath 3.1中,可直接使用json:serialize()函数完成需求,该函数会自动按照JSON字符串规则对输入文本进行转义,并添加必要的双引号包裹。

完整的XPath表达式:

json:serialize(string(/xml))

说明

  • string(/xml):提取目标节点的字符串值;
  • json:serialize():将输入字符串序列化为合法的JSON字符串字面量,自动处理双引号、反斜杠等需转义的字符,同时为整个字符串添加双引号包裹。

注意:该函数属于XPath 3.1扩展功能,需使用支持XPath 3.1的处理器(如Saxon)执行。

内容的提问来源于stack exchange,提问作者Fravadona

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 18:35:17