1

私はこれらの2つの配列を持っています:

<xsl:variable name="array1" select="umbraco.library:Split($currentPage/websiteThemes, ',')//value"/>
<xsl:variable name="array2" select="umbraco.library:Split($currentPage/websiteThemes2, ',')//value"/>

配列内のどの要素が一致するかを確認したいと思います。どうすればそれを達成できますか?

これは、array1とarray2のコピーからの出力です。

array1:

<value>1087</value><value>1002</value><value>3202</value>

array2:

<value>1087</value><value>1577</value>

この例では、結果として値1087を取得したいと思います。

4

1 に答える 1

2

質問はあまり明確ではありませんが、これが質問されていることに答えることを願っています:

この変換

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:output omit-xml-declaration="yes" indent="yes"/>
 <xsl:strip-space elements="*"/>

 <xsl:variable name="vArr1" select="/*/arr1/*"/>
 <xsl:variable name="vArr2" select="/*/arr2/*"/>

 <xsl:template match="/">
     <xsl:copy-of select="$vArr1[. = $vArr2]"/>
 </xsl:template>
</xsl:stylesheet>

このXMLドキュメントに適用した場合(質問には何も提供されていません!):

<t>
 <arr1>
  <value>1087</value>
  <value>1002</value>
  <value>3202</value>
 </arr1>
 <arr2>
  <value>1087</value>
  <value>1577</value>
 </arr2>
</t>

必要な結果を生成します(私が推測するものです)

<value>1087</value>
于 2012-09-28T13:23:51.777 に答える