xslt - 如何在 XPath 中表达同时包含撇号和引号的字符串?

标签 xslt xpath xpath-1.0

我不会告诉你细节,因为它们会造成不必要的困惑。长话短说,我正在使用 XSLT 1.0 生成 XSL 文档,我正在尝试将变量与文字字符串进行比较,并且该字符串可能包含引号和撇号。

为了简单起见,假设该文字由两个字符组成:引号后跟撇号。实际上,它可以是任何文本。有没有更简单的方法来做到这一点:

<xsl:if test="$var = concat('&quot;', &quot;'&quot;)">

比这个?

<xsl:variable name="str">"'</xsl:variable>
<xsl:if test="$var = $str">

我查过XPath's specs并且似乎没有办法转义字符,因此以下内容将无法按预期工作:

<xsl:if test="$var = '&quot;&amp;apos;'">

谢谢!

最佳答案

在 XPath 1.0 中没有办法巧妙地做到这一点。在 XPath 2.0 中,您可以通过加倍来转义这两种引号。

关于xslt - 如何在 XPath 中表达同时包含撇号和引号的字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1255687/

相关文章:

xml - XSLT + 用转义序列替换双引号

xml - 为什么我的图像没有显示在 XSL-FO 中?

php - 在XPath评估之前,如何处理字符串中的双引号?

selenium - 如何从 div 标签获取文本并在一行中打印

.net - 如何使用 XPath 选择最浅的匹配元素?

xml - 如何使用XSLT 1.0进行分组汇总

XSLT - 在副本中保留禁用输出转义

xml - 提取XML属性和节点值R

XPath:在 HTML 元素中搜索 HTML 元素

javascript - 基于span标签的div的Xpath