私はこのようなことをしたい:
<xsl:analyze-string select="'ABCD'" regex="(A|B|C|D)+">
<xsl:matching-substring>
<xsl:for-each select="regex-group(1)">
<letter><xsl:value-of select="." /></letter>
</xsl:for-each>
</xsl:matching-substring>
</xsl:analyze-string>
=>
<letter>A</letter>
<letter>B</letter>
<letter>C</letter>
<letter>D</letter>
xsl:analyze-string
しかし、グループでキャプチャされた最後の値のみを保持するため、可能ではないように見えるため、実際の出力は次のとおりです。
<letter>D</letter>
一般的な問題は、未知の順序で現れる可能性がある既知の値を扱うことです。