Xml XSLT,使用+;变量值中的字符

Xml XSLT,使用+;变量值中的字符,xml,xslt,xpath,Xml,Xslt,Xpath,是否可以在xslt中创建一个变量并将其赋值为“10+” 分配“10”是可以的,但当我添加+符号时,我会在表达式中得到一个“意外标记…”异常。对字符串使用引号,否则处理器会认为它是一个表达式: '10+' 是否可以在中创建变量 xslt并为其赋值“10+” 是的。这种转变: <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output omit-xml-

是否可以在xslt中创建一个变量并将其赋值为“10+”


分配“10”是可以的,但当我添加+符号时,我会在表达式中得到一个“意外标记…”异常。

对字符串使用引号,否则处理器会认为它是一个表达式:

'10+'
是否可以在中创建变量 xslt并为其赋值“10+”

是的。这种转变

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

 <xsl:template match="/">
     <xsl:variable name="vStr" select="'10+'"/>

     "<xsl:value-of select="$vStr"/>"
 </xsl:template>

</xsl:stylesheet>

我认为你的报价可能不够。您的代码应该如下所示:

<xsl:variable name='my-var' select="'10+'"/>

就像Max Toro所说的,使用引号表示字符串。这包括属性值的“”引号内的引号(例如
select=”“

例如:

<xsl:variable name="var" select="'10+'"/>

您也可以这样做:

<xsl:variable name="var">10+</xsl:variable>
10+

谢谢,但我还是遇到了同样的例外情况。请向我们展示您目前拥有的功能。您的报价肯定有误,但很难看出在哪里。不建议使用
10+
,因为您创建的是文本节点,而不是字符串。
<xsl:variable name="var">10+</xsl:variable>