Funzione substring
Restituisce la sottostringa del primo argomento che inizia nella posizione specificata nel secondo argomento e della lunghezza specificata nel terzo argomento.
string substring(string, number, number?)
Osservazioni
Ogni carattere nella stringa ha una posizione numerica: la posizione del primo carattere è 1, la posizione del secondo carattere è 2 e così via.
Se il terzo argomento non è specificato, viene restituita la sottostringa che inizia nella posizione specificata nel secondo argomento e che continua fino alla fine della stringa.
Se un argomento non è di tipo stringa, viene prima convertito in una stringa utilizzando la funzione string(), quindi viene valutato il risultato della conversione.
Attenzione: |
---|
Le conversioni di stringa per i set di nodi passati come argomenti a questa funzione possono dare risultati imprevisti.Per ulteriori informazioni, vedere Funzione string. |
La funzione rileva la differenza tra maiuscole e minuscole.
Esempio
La seguente funzione di chiamata restituisce "234":
substring("12345",2,3)
La seguente funzione di chiamata restituisce "2345":
substring("12345",2)
La sottostringa restituita contiene i caratteri per i quali la posizione del carattere è maggiore o uguale al valore arrotondato del secondo argomento e, se è specificato il terzo argomento, minore della somma del valore arrotondato del secondo argomento e del valore arrotondato del terzo argomento. Le operazioni di confronto e di aggiunta utilizzate in precedenza sono conformi alle regole standard IEEE 754. L'arrotondamento viene eseguito come quando si chiama la funzione round()
.
Negli esempi seguenti vengono illustrati casi non comuni.
substring("12345", 1.5, 2.6)
restituisce "234
"
substring("12345", 0, 3)
restituisce "12
"
substring("12345", 0 div 0, 3)
restituisce ""
substring("12345", 1, 0 div 0)
restituisce ""
substring("12345", -42, 1 div 0)
restituisce "12345"
substring("12345", -1 div 0, 1 div 0)
restituisce ""
In questo esempio vengono illustrate le precedenti espressioni substring()
.
File XML
Nessuno; il file XSLT chiama se stesso.
File XSLT (substring.xsl)
Output formattato
substring("12345",2,3) = 234 substring("12345",2) = 2345 substring("12345", 1.5, 2.6) = 234 substring("12345", 0, 3) = 12 substring("12345", 0 div 0, 3) = substring("12345", 1, 0 div 0) = substring("12345", -42, 1 div 0) = 12345 substring("12345", -1 div 0, 1 div 0) =
Output del processore
<?xml version="1.0" ?> substring("12345",2,3) = 234<br /> substring("12345",2) = 2345<br /> substring("12345", 1.5, 2.6) = 234<br /> substring("12345", 0, 3) = 12<br /> substring("12345", 0 div 0, 3) = <br /> substring("12345", 1, 0 div 0) = <br /> substring("12345", -42, 1 div 0) = 12345<br /> substring("12345", -1 div 0, 1 div 0) =