嵌套 XML 的 Xml Xpath 表达式 | 珊瑚贝

Xml Xpath Expression for Nested XML


我有一个 XML

1
2
3
4
5
<font-text content-format=“howdy” data-type=“text”>
<Index>1</Index>
<Root>1</Root>
<Result>302</Result>
</font-text>

如果我想取出 “Index”,”Root”,上述 XMS 的 Xpath 表达式是什么


XPath string-join() 和 format-number() 函数来救援。

format-number() 函数存在于 XSLT 2.0

它已从 XSLT 3.0 移至 XPath 3.0

XPath 3.0

1
string-join((/font-text/Result/text(), format-number(/font-text/Root/text(),’00’), format-number(/font-text/Index/text(),’00’)),“-“)

XPath 2.0

1
2
3
4
string-join((/font-text/Result/text()
, substring(concat(“00”, /font-text/Root/text()), string-length(concat(“00”,/font-text/Root/text())) – 1)
, substring(concat(“00”, /font-text/Index/text()), string-length(concat(“00”,/font-text/Index/text())) – 1))
,“-“)

XPath 1.0

1
2
3
4
5
6
concat(/font-text/Result/text()
,“-“
, substring(concat(“00”, /font-text/Root/text()), string-length(concat(“00”,/font-text/Root/text())) – 1)
,“-“
, substring(concat(“00”, /font-text/Index/text()), string-length(concat(“00”,/font-text/Index/text())) – 1)
)
  • 使用”w3.org/XML/1998/namespace”编译…它的说法是找不到函数:string-join
  • 在这里查看:w3.org/TR/xquery-operators/#func-string-join
  • 使用 Java xml”xPath.compile(expression).evaluate(node);”。在这里不工作
  • 我通过使用不同版本的 XPath 展示了三种不同的解决方案。你都试过了吗?
  • 我的不好,它起作用了…感谢您的帮助,非常感谢


来源:https://www.codenong.com/60975422/

微信公众号
手机浏览(小程序)

Warning: get_headers(): SSL operation failed with code 1. OpenSSL Error messages: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed in /mydata/web/wwwshanhubei/web/wp-content/themes/shanhuke/single.php on line 57

Warning: get_headers(): Failed to enable crypto in /mydata/web/wwwshanhubei/web/wp-content/themes/shanhuke/single.php on line 57

Warning: get_headers(https://static.shanhubei.com/qrcode/qrcode_viewid_9628.jpg): failed to open stream: operation failed in /mydata/web/wwwshanhubei/web/wp-content/themes/shanhuke/single.php on line 57
0
分享到:
没有账号? 忘记密码?