需要能够在字符串Cmm'l中传递单引号,以便它读取该短语的原始xml文件。我该怎么做呢?
<xsl:when test="contains(ct-type/cats, 'Cmml') or contains(ct-type/cats, 'rst')">
<xsl:element name="Terms">
<xsl:value-of select="'example'"/>
</xsl:element>
</xsl:when>
答案 0 :(得分:0)
您可以将值作为变量或参数传递。
我确信有更好的方法可以做到这一点,但我现在无法想到它。
以下是将其作为带有默认值的参数传递的示例:
<xsl:template match="doc">
<xsl:param name="cat_type_1">
<xsl:text>Cmm'l</xsl:text>
</xsl:param>
<xsl:param name="cat_type_2">
<xsl:text>rst</xsl:text>
</xsl:param>
<xsl:if test="contains(ct-type/cats, $cat_type_1) or contains(ct-type/cats, $cat_type_2)">
<Terms>Example</Terms>
</xsl:if>
</xsl:template>
答案 1 :(得分:0)
您可以使用撇号作为属性值分隔符,然后在字符串中使用实体:
<xsl:when test='contains(ct-type/cats, "Cmm'l") or contains(ct-type/cats, "rst")'>
如果字符串中同时需要引号和撇号,则可以使用例如字符串或标点符号的变量。