Funzioni di test
Una funzione di test esegue il paragone dei dati. Utilizza una funzione di test per identificare il tipo di dati di un valore o determinare se esiste un valore. È possibile utilizzare una funzione di test su tutti i tipi di dati .
CompareDictionary
CompareDictionary(a,b)
: confronta 2 stringhe, ignorando le differenze tra lettere maiuscole e minuscole, e il testo composto da numeri in ordine numerico. La funzione restituisce -1 se a < b, 0 se a==b e 1 se a > b.
Questa funzione non ha esattamente lo stesso ordine di un confronto tra dizionari, in quanto non gestisce i segni diacritici allo stesso modo dello strumento Ordina quando è configurato per eseguire un ordinamento dizionario utilizzando le convenzioni di una determinata lingua.
Esempio
CompareDictionary("apples","bananas")
restituisce -1.
CompareDictionary("APPLES","bananas")
restituisce -1.
CompareDictionary("apples","BANANAS")
restituisce -1.
CompareDictionary("Cherries","Bananas")
restituisce 1.
CompareDictionary("Bananas","bananas")
restituisce 0.
CompareDictionary("2","10")
restituisce -1 (2 è minore di 10, anche se il carattere "2" è maggiore del carattere "1").
CompareDictionary("minus -2","minus -10")
restituisce 1 (-2 è maggiore di -10. I segni meno vengono riconosciuti solo all'inizio o dopo lo spazio vuoto).
CompareDictionary("minus-2","minus-10")
restituisce -1 (2 è inferiore a 10. Il segno meno, non dopo uno spazio, non è stato conteggiato come parte del numero).
CompareDictionary("pi 3.14","pi 6.28e-1")
restituisce 1 (sì, riconosce la sintassi dei numeri a virgola mobile e 3,14 è maggiore di 0,628).
CompareDictionary("12.00","12.0")
restituisce 1 (quando i numeri hanno lo stesso valore, la stringa di cifre più lunga viene considerata maggiore).
CompareDictionary("a", "À")
restituisce -1.
CompareDictionary("n","ñ")
restituisce -1 (le lettere con segni sono più grandi, in alfabeto latino, rispetto a tutte le lettere senza segni).
CompareDictionary("o","ñ")
restituisce -1 (in un confronto tra dizionari in spagnolo, Ñ deve essere inferiore a O. Non si tratta di un confronto tra dizionari linguistici).
CompareDictionary("ñ","Ñ")
restituisce 0 (anche i caratteri con segni vengono confrontati ignorando la distinzione tra maiuscole e minuscole).
CompareDigits
CompareDigits(a, b, nNumDigits)
: confronta 2 numeri e determina se sono uguali al numero di cifre specificato (nNumDigits).
Il confronto individua la differenza tra i numeri e segnala A e B come uguali quando la cifra iniziale della differenza è nNumDigits o più posizioni a destra delle cifre del valore maggiore tra A e B.
Il parametro
nNumDigits
non deve essere nullo e deve essere compreso tra 1 e 19, altrimenti si verifica un errore. Se viene fornito un numero non intero, questo viene arrotondato al numero intero più vicino (nNumDigits può essere compreso tra 0,5 e 19,499).
Esempio
CompareDigits(12345, 12444, 3)
restituisce "True" (poiché la differenza è 99, e la sua cifra iniziale è 3 posizioni a destra rispetto alla cifra iniziale di A).
CompareDigits(12345, 12445, 3)
restituisce "False" (poiché la differenza è 100 e la cifra iniziale è solo 2 posizioni a destra rispetto alla cifra iniziale di A).
CompareDigits(12.345, 12.347, 3)
restituisce "True" (poiché la differenza è 0,002, e la sua cifra iniziale è 4 posizioni a destra rispetto alla cifra iniziale di A).
CompareDigits(12.345, 12.435, 3)
restituisce "True" (poiché la differenza è 0,09, e la sua cifra iniziale è 3 posizioni a destra rispetto alla cifra iniziale di A).
CompareDigits( .91234, .91334, 3)
restituisce "False" (poiché la differenza è 0,001 e la cifra iniziale è solo 2 posizioni a destra rispetto alla cifra iniziale di A).
CompareEpsilon
CompareEpsilon(a, b, epsilon)
: confronta 2 numeri a virgola mobile e restituisce True se sono entro epsilon.
Esempio
CompareEpsilon(123.456789101112, 123.456789101114, 0.0001)
restituisce "True".
CompareEpsilon(123.456, 123.456789101112, 0.0001)
restituisce "False".
EqualStrings
EqualStrings(a,b)
: confronta la stringa (a) con la stringa (b) per determinare se corrispondono esattamente. La funzione restituisce True se tutti i caratteri in entrambe le stringhe a e b sono identici e False se uno o più caratteri non sono identici.
Questa funzione effettua la distinzione tra maiuscole e minuscole.
Esempio
EqualStrings('Hello','Hello')
restituisce True.
EqualStrings('Hello','hello')
restituisce False.
EqualStrings('happy birthday','happy birthday')
restituisce True.
EqualStrings('happy birthday','happy birthday')
restituisce False.
EqualStrings('Happy 10th birthday!', 'Happy 10th birthday')
restituisce False.
EqualStrings('Hello','')
restituisce False.
EqualStrings('Hello', Null)
restituisce False.
EqualStrings(Null(), Null())
restituisce True.
EqualStrings('Hello')
restituisce un errore. La funzione richiede esattamente 2 parametri.
IsEmpty
IsEmpty(v)
: verifica se v è NULL o uguale a "".
Esempio
Nome (v) | IsEmpty |
---|---|
John | False |
True | |
Mary | False |
[Null] | True |
IsInteger
IsInteger(v)
: verifica se (v) contiene un valore che si può convertire in un numero intero. In caso affermativo, restituisce True.
Sezione
Valore (v) | IsInteger |
---|---|
1 | True |
1.23 | False |
B | False |
IsLowerCase
IsLowerCase(String)
: restituisce True se tutti (uno o più) i caratteri alfabetici in una stringa sono minuscoli e False se uno o più caratteri alfabetici sono maiuscoli. La funzione ignora i caratteri non alfabetici. Questa funzione si applica solo ai caratteri con distinzione tra maiuscole e minuscole e potrebbe non essere applicabile ai caratteri in tutte le lingue.
Questa funzione funziona solo con i tipi di dati stringa.
Questa funzione restituisce True solo se è presente almeno un carattere minuscolo e nessun carattere maiuscolo.
Questa funzione restituisce True solo per i caratteri con distinzione tra maiuscole e minuscole. Potrebbe non essere applicabile ai caratteri in tutte le lingue (ad esempio, giapponese).
Se si passano dati numerici come stringa, la funzione restituisce False perché, in questo caso, non ci sono caratteri alfabetici da valutare. La stringa deve contenere almeno 1 carattere alfabetico affinché la funzione possa valutarla come in minuscolo.
Questa funzione ignora gli spazi in quanto sono caratteri non alfabetici. Se l'espressione contiene solo spazi, viene valutata come False perché gli spazi non presentano una distinzione tra maiuscole e minuscole.
Se si passa un valore Null, la funzione restituisce False.
Esempio
IsLowerCase('nicole')
restituisce True.
IsLowerCase('happy birthday!')
restituisce True.
IsLowerCase('niCOLE')
restituisce False.
IsLowerCase('2023')
restituisce False. La funzione ignora i caratteri non alfabetici, quindi valuta questo valore come un campo vuoto, ad esempio: ('').
IsLowerCase(nicole)
restituisce un errore.
IsLowerCase(2023)
restituisce un errore.
IsLowerCase(null)
restituisce False.
IsLowerCase(' ')
restituisce False. Gli spazi non presentano distinzione tra maiuscole e minuscole.
IsNull
IsNull(v)
: verifica se (v) è NULL. Restituisce True se v è NULL, altrimenti restituisce False.
Per popolare una riga con un valore NULL, utilizza la funzione
NULL()
.
Esempio
Nome (v) | IsNull |
---|---|
John | False |
[Null] | True |
Mary | False |
IsNumber
IsNumber(v)
: verifica se il tipo di campo per (v) è un numero o meno.
IsSpatialObj
IsSpatialObj(v)
: verifica se il tipo di campo per (v) è un oggetto spaziale o meno.
IsString
IsString(v)
: verifica se il tipo di campo per (v) è una stringa o meno.
IsUpperCase
IsUpperCase(String)
: restituisce True se tutti (uno o più) i caratteri alfabetici in una stringa sono maiuscoli e False se uno o più caratteri alfabetici sono minuscoli. La funzione ignora i caratteri non alfabetici. Questa funzione si applica solo ai caratteri con distinzione tra maiuscole e minuscole e potrebbe non essere applicabile ai caratteri in tutte le lingue.
Questa funzione funziona solo con i tipi di dati stringa.
Questa funzione restituisce True solo se è presente almeno un carattere maiuscolo nessun carattere minuscolo.
Questa funzione restituisce True solo per i caratteri con distinzione tra maiuscole e minuscole. Potrebbe non essere applicabile ai caratteri in tutte le lingue (ad esempio, giapponese).
Se si passano dati numerici come stringa, la funzione restituisce False perché, in questo caso, non ci sono caratteri alfabetici da valutare. La stringa deve contenere almeno 1 carattere alfabetico affinché la funzione possa valutarla come in maiuscolo.
Questa funzione ignora gli spazi in quanto sono caratteri non alfabetici. Se l'espressione contiene solo spazi, viene valutata come False perché gli spazi non presentano una distinzione tra maiuscole e minuscole.
Se si passa un valore Null, la funzione restituisce False.
Esempio
IsUpperCase('NICOLE')
restituisce True.
IsUpperCase('HAPPY BIRTHDAY!')
restituisce True.
IsUpperCase('NicOLE')
restituisce False.
IsUpperCase('2023')
restituisce False. La funzione ignora i caratteri non alfabetici, quindi valuta questo valore come un campo vuoto, ad esempio: ('').
IsUpperCase(NICOLE)
restituisce un errore.
IsUpperCase(2023)
restituisce un errore.
IsUpperCase(null)
restituisce False.
IsUpperCase(' ')
restituisce False. Gli spazi non presentano distinzione tra maiuscole e minuscole.