Я краснул несколько существующих вопросов, но они имели в виду пространства, которые существуют в xml. Я пытаюсь удалить пробелы, которые происходят из-за формата кода xslt.XSLT удаляет пробелы между выводами
У меня есть следующий код XSL, который должен создать кесарево файл:
#if (defined(<xsl:value-of select="./@Name"/>_TEST1) || \
defined(<xsl:value-of select="./@Name"/>_TEST2) || \
defined(<xsl:value-of select="./@Name"/>_TEST3) || \
defined(<xsl:value-of select="./@Name"/>_TEST4) || \
defined(<xsl:value-of select="./@Name"/>_TEST5) \
<xsl:if test="CONDITION1">
|| defined(<xsl:value-of select="./@Name"/>_TEST6) || \
defined(<xsl:value-of select="./@Name"/>_TEST7) || \
defined(<xsl:value-of select="./@Name"/>_TEST8)
</xsl:if>
<xsl:if test="CONDITION2">
|| defined(<xsl:value-of select="./@Name"/>_TEST9)
</xsl:if>
)
Но с вышеуказанной структурой выход равен:
#if (defined(NAME_TEST1) || \
defined(NAME_TEST2) || \
defined(NAME_TEST3) || \
defined(NAME_TEST4) || \
defined(NAME_TEST5) \
|| defined(NAME_TEST6) || \
defined(NAME_TEST7) || \
defined(NAME_TEST8)
)
Что дает ошибку гр. Нужный выход:
#if (defined(NAME_TEST1) || \
defined(NAME_TEST2) || \
defined(NAME_TEST3) || \
defined(NAME_TEST4) || \
defined(NAME_TEST5) \
|| defined(NAME_TEST6) || \
defined(NAME_TEST7) || \
defined(NAME_TEST8))
Update1
мне удалось заставить его работать так, хотя я не понимаю, почему это работает. Может ли кто-нибудь просветить меня?
#if (defined(<xsl:value-of select="./@Name"/>_TEST1) || \
defined(<xsl:value-of select="./@Name"/>_TEST2) || \
defined(<xsl:value-of select="./@Name"/>_TEST3) || \
defined(<xsl:value-of select="./@Name"/>_TEST4) || \
defined(<xsl:value-of select="./@Name"/>_TEST5) \ <xsl:text></xsl:text>
<xsl:if test="CONDITION1">
|| defined(<xsl:value-of select="./@Name"/>_TEST6) || \
defined(<xsl:value-of select="./@Name"/>_TEST7) || \
defined(<xsl:value-of select="./@Name"/>_TEST8) <xsl:text></xsl:text>
</xsl:if>
<xsl:if test="CONDITION2">
|| defined(<xsl:value-of select="./@Name"/>_TEST9) <xsl:text></xsl:text>
</xsl:if>
<xsl:text>)</xsl:text>
'xsl: strip-space' возможно? –
@KerrekSB Элемент 'xsl: strip-space' используется для определения элементов, для которых должно быть удалено пустое пространство. У меня нет белых пробелов в моих элементах, поэтому я не думаю, что это поможет. –
@AlexandruCimpanu Пожалуйста, напишите ** воспроизводимый пример ** - см .: [mcve]. –