根據出的要求,我們需要包裝由逗號分隔para的內容。我們能夠做到這一點。 但不應考慮thiru標籤的逗號,它必須附加到以前的標籤或下一個標籤。 如果只有para是在之前和之後,那麼它應該被附加兩者。Unwarp標籤,並把逗號之間期望單標籤
見下面的例子:
輸入4:
<Para>Apple1
<Thiru>Mango1<Ref>Grape1</Ref><Ref>Grape2</Ref><Ref>Grape3</Ref>Mango2</Thiru>Apple2
</Para>
輸出4:
<Para>Apple1Mango1,Grape1,Grape2,Grape3Mango2,Apple2</Para>
當前的xsl:
<xsl:copy-of select="$Cells/Para/@*" />
<xsl:for-each select="$Cells/Para/node()[self::text() or self::Ref or self::Thiru][normalize-space(.)!='']">
<xsl:value-of select="normalize-space(.)" />
<xsl:if test="position()!=last()" >
<xsl:value-of select="','" />
</xsl:if>
</xsl:for-each>
通過使用我們正在當前的XSL,對所有元素我的要求是我們不應該考慮標籤蒂魯。
請驗證示例輸入和輸出。在當前輸入和預期的輸出
測試案例4似乎矛盾測試用例1.在測試情況1中,一逗號是*不在'Thiru'的內容和最後一個字符串之間輸出,但在測試案例4中,*輸出*。請解決這個矛盾。 –
Hi @ SeanB.Durkin,Thansk爲您的迴應。實際上,這就是要求。如果para只有thiru,那麼預計第一個輸出。如果Ref在Thieu的前面和後面出現,那麼值應該應用於裁判並且應該使用逗號。即我們根本不考慮蒂魯。 – ThirumalMarugan
'1234'在測試用例3中來自哪裏?它甚至沒有輸入。 –