Я избавлю вас от деталей, потому что они будут бесполезно сбивать с толку. Короче говоря, я использую XSLT 1.0 для создания документов XSL, я пытаюсь сравнить переменную с литеральной строкой, и эта строка может содержать кавычки и апострофы.
Ради простоты предположим, что этот литерал состоит из двух символов: кавычка, за которой следует апостроф. В действительности это может быть любой текст на самом деле. Есть ли более простой способ сделать это:
<xsl:if test="$var = concat('"', "'")">
чем это?
<xsl:variable name="str">"'</xsl:variable>
<xsl:if test="$var = $str">
Я проверил Спецификации XPath , и, похоже, нет способа экранировать символы, поэтому следующее не будет работать должным образом:
<xsl:if test="$var = '"&apos;'">
Спасибо!