Condividi tramite


Funzione ms:string-compare

Esegue confronti di stringhe. Questa funzione è necessaria in quanto non è possibile confrontare lessicograficamente due stringhe usando XPath.

number ms:string-compare(string x, string y, [,string language _
                                             [,string options]])

Parametri

  • x di stringa
    Valore di stringa per il confronto. I valori non di tipo stringa vengono convertiti in un valore di stringa prima del confronto.
  • y di stringa
    Valore di stringa per il confronto. I valori non di tipo stringa vengono convertiti in un valore di stringa prima del confronto.
  • lingua della stringa[facoltativo]
    Definisce la lingua per determinare la sequenza di ordinamento. È simile all'attributo <xsl:sort> lang (ad esempio, "en-US" oppure "fr-CA"). Se questo parametro viene omesso oppure è una stringa vuota, la lingua viene definita dall'ambiente di sistema (lingua del thread corrente).
  • opzioni di stringa[facoltativo]
    Per impostazione predefinita, l'operazione di confronto rileva la differenza tra maiuscole e minuscole: le minuscole hanno la precedenza.

    opzione descrizione

    u

    Rende il confronto sensibile alla distinzione tra maiuscole e minuscole e assegna la precedenza alle maiuscole.

    i

    Rende il confronto insensibile a tutte le differenze tipiche tra caratteri, come maiuscole/minuscole, kana e larghezza. (La larghezza del carattere si applica solo ad alcune lingue.)

Valori restituiti

Viene restituito uno dei tre seguenti valori numerici.

Se La funzione di esempio restituisce

x < y

-1

x = y

0

x > y

1

Osservazioni

I confronti tra stringhe vengono eseguiti in ordine lessicografico, ovvero in base all'ordine di dizionario. Se si specifica una lingua o un'opzione non supportata, si verifica un errore di runtime. Per i componenti MSXML, viene restituito E_FAIL.

Esempio

Nell'esempio di codice seguente viene illustrato come eseguire il confronto di due stringhe utilizzando la funzione ms:string-compare. Nell'esempio viene eseguito il confronto di tre stringhe di numeri ("1", "2" e "3") con "2". I risultati dei confronti sono visualizzati nella tabella che segue il codice.

File XML

File XSLT (translate.xsl)

Di seguito sono riportati i risultati dei confronti:

x, y Risultato

"1" , "2"

-1

"2" , "2"

0

"3" , "2"

1

Vedere anche

Riferimento

Riferimenti dello schema XML (XSD)
Riferimenti dei tipi di dati XML