gpt4 book ai didi

xpath - 在SOAP UI中声明的Xpath表达式:如何处理节点值(例如Abc的作品)的撇号等特殊符号

转载 作者:行者123 更新时间:2023-12-03 17:02:43 25 4
gpt4 key购买 nike

我们如何检查节点重新调整内的值,即

飓风烧烤达令港

实际上,我无法使用以下代码选择撇号
存在(// ns1:name [text()='Hurricane's Grill Darling Harbour'])。

收到错误消息:
RuntimeException:net.sf.saxon.trans.XPathException:{... name [text()='Hurricane's Gr ...}:第2行中char 33处的XPath语法错误:预期为“]”,发现名称为“ s”

最佳答案

我无法使用以下代码选择撇号
存在(// ns1:name [text()='Hurricane's Grill Darling Harbour'])。

正在获取错误消息:RuntimeException:net.sf.saxon.trans.XPathException:XPath语法错误,位于{... name [text()='Hurricane's Gr ...}}中第2行的char 33处:
预期为“]”,找到名称为“ s”


在XPath 2.0中,只需将字符加倍即可转义撇号或双引号。在此处查看规则[75][76]http://www.w3.org/TR/xpath20/#terminal-symbols

用:

exists(//ns1:name[text()='Hurricane''s Grill Darling Harbour'])




基于XSLT 2.0的验证:

<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:ns1="ns1">
<xsl:output omit-xml-declaration="yes" indent="yes"/>

<xsl:template match="/">
<xsl:sequence
select="exists(//ns1:name[text()='Hurricane''s Grill Darling Harbour'])"/>
</xsl:template>
</xsl:stylesheet>


在以下XML文档上应用此转换时:

<ns1:name xmlns:ns1="ns1">Hurricane's Grill Darling Harbour</ns1:name>


所需的正确结果产生了:

true




如果您只能在XML文档中使用XPath 1.0表达式,并且该字符串包含两种引号,请使用:

boolean(//ns1:name
[text()=concat('Hurricane &quot;Mathew&quot;', &quot; strength&apos;s value&quot;)])


这是完整的基于XSLT 1.0的验证:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:ns1="ns1">
<xsl:output omit-xml-declaration="yes" indent="yes"/>

<xsl:template match="/">
<xsl:value-of select=
"boolean(//ns1:name
[text()=concat('Hurricane &quot;Mathew&quot;', &quot; strength&apos;s value&quot;)])"/>
</xsl:template>
</xsl:stylesheet>


在以下XML文档上应用此转换时:

<ns1:name xmlns:ns1="ns1">Hurricane "Mathew" strength's value</ns1:name>


所需的正确结果产生了:

true

关于xpath - 在SOAP UI中声明的Xpath表达式:如何处理节点值(例如Abc的作品)的撇号等特殊符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39901210/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com