2008-09-25 9 views

Respuesta

1

Calcule la diferencia entre su conjunto original y el conjunto de valores distintos. Este es el conjunto de números que ocurren más de una vez. Tenga en cuenta que los números en este conjunto de resultados no son necesariamente distintos si ocurren más de dos veces en la secuencia original, por lo tanto conviértalo de nuevo en un conjunto de valores distintos si es necesario.

3

¿Qué hay de:

distinct-values(
    for $item in $seq 
    return if (count($seq[. eq $item]) > 1) 
     then $item 
     else()) 

Este itera a través de los elementos de la secuencia y devuelve el artículo si el número de elementos en la secuencia que son iguales a ese elemento es mayor que uno. Luego debe usar distinct-values() para eliminar los duplicados de esa lista.

+2

Hola Jeni, parece que no hay una solución más simple :) $ vSeq [índice de ($ vSeq,.) [2]] Cheers, Dimitre –

-1

¿Qué pasa con xsl? ¿Es aplicable a su solicitud?

<xsl:for-each select="/r/a"> 
     <xsl:variable name="cur" select="." /> 
     <xsl:if test="count(./preceding-sibling::a[. = $cur]) > 0 and count(./following-sibling::a[. = $cur]) = 0"> 
      <xsl:value-of select="." /> 
     </xsl:if> 
    </xsl:for-each> 
Cuestiones relacionadas