Torna alla versione inglese della documentazioneFunzioni di stringa
Funzioni stringa (SPSS Modeler)
Ultimo aggiornamento: 20 dic 2024
Con CLEM, è possibile eseguire operazioni per confrontare stringhe, creare stringhe o accedere ai caratteri.
In CLEM, una stringa è qualsiasi sequenza di caratteri tra virgolette doppie corrispondenti ("string quotes"
). I caratteri (CHAR
) possono essere qualsiasi singolo carattere alfanumerico. Vengono dichiarati nelle espressioni CLEM utilizzando le virgolette singole nel formato `<character>`
, come `z`
, `A`
o `2`
. I caratteri che rappresentano indici fuori intervallo o negativi in una stringa determineranno un comportamento non definito.
Nota: i confronti tra le stringhe che utilizzano e non utilizzano il push back SQL possono generare risultati differenti laddove esistono spazi finali.
Funzione | Risultato: | Descrizione |
---|---|---|
allbutfirst(N, STRING) |
Stringa | Restituisce una stringa risultante dalla rimozione dei primi N caratteri da STRING . |
allbutlast(N, STRING) |
Stringa | Restituisce una stringa risultante dalla rimozione degli ultimi caratteri da STRING . |
alphabefore(STRING1, STRING2) |
Booleano | Viene utilizzata per controllare l'ordine alfabetico delle stringhe. Restituisce un valore vero se STRING1 precede STRING2 . |
count_substring(STRING, SUBSTRING) |
Intero | Restituisce il numero di volte in cui la sottostringa specificata è presente all'interno della stringa. Ad esempio, count_substring("foooo.txt", "oo") restituisce 3 . |
endstring(LENGTH, STRING) |
Stringa | Estrae gli ultimi N caratteri dalla stringa specificata. Se la lunghezza della stringa è inferiore o uguale alla lunghezza specificata, rimane invariata. |
hasendstring(STRING, SUBSTRING) |
Intero | Questa funzione è uguale a isendstring(SUBSTRING, STRING) . |
hasmidstring(STRING, SUBSTRING) |
Intero | Questa funzione è equivalente a ismidstring(SUBSTRING, STRING) , in relazione alla sottostringa incorporata. |
hasstartstring(STRING, SUBSTRING) |
Intero | Questa funzione è uguale a isstartstring(SUBSTRING, STRING) . |
hassubstring(STRING, N, SUBSTRING) |
Intero | Questa funzione è la stessa di issubstring(SUBSTRING, N, STRING) , dove N assume il valore predefinito di 1 . |
hassubstring(STRING, SUBSTRING) |
Intero | Questa funzione è la stessa di issubstring(SUBSTRING, 1, STRING) , dove N assume il valore predefinito di 1 . |
isalphacode(CHAR) |
Booleano | Restituisce un valore vero se CHAR rappresenta un carattere della stringa specificata (spesso un nome di campo) con codice alfabetico. Altrimenti, questa funzione restituisce il valore 0 . Ad esempio, isalphacode(produce_num(1)) . |
isendstring(SUBSTRING, STRING) |
Intero | Se la stringa STRING termina con la sottostringa SUBSTRING , questa funzione restituirà il numero di indice di SUBSTRING in STRING . Altrimenti, questa funzione restituisce il valore 0 . |
islowercode(CHAR) |
Booleano | Restituisce il valore true se CHAR è un carattere lettera minuscola per la stringa specificata (spesso un nome campo). Altrimenti, questa funzione restituisce il valore 0 . Ad esempio, sia islowercode(``) che islowercode(country_name(2)) sono espressioni valide. |
ismidstring(SUBSTRING, STRING) |
Intero | Se SUBSTRING è una sottostringa di STRING ma non ha inizio con il primo carattere di STRING né termina con l'ultimo, questa funzione restituirà l'indice in corrispondenza del quale inizia la sottostringa. Altrimenti, questa funzione restituisce il valore 0 . |
isnumbercode(CHAR) |
Booleano | Restituisce il valore vero se CHAR per la stringa specificata (spesso un nome di campo) rappresenta un carattere con codice numerico. Altrimenti, questa funzione restituisce il valore 0 . Ad esempio, isnumbercode(product_id(2)) . |
isstartstring(SUBSTRING, STRING) |
Intero | Se la stringa STRING inizia con la sottostringa SUBSTRING , questa funzione restituisce l'indice 1 . Altrimenti, questa funzione restituisce il valore 0 . |
issubstring(SUBSTRING, N, STRING) |
Intero | Ricerca la stringa STRING , a partire dal carattere Nth , per una sottostringa uguale alla stringa SUBSTRING . Se la ricerca ha esito positivo, questa funzione restituisce il valore di indice numero intero in corrispondenza del quale ha inizio la sottostringa corrispondente. Altrimenti, questa funzione restituisce il valore 0 . Se N non viene fornito, questa funzione assume il valore predefinito 1 . |
issubstring(SUBSTRING, STRING) |
Intero | Ricerca la stringa STRING . Se la ricerca ha esito positivo, questa funzione restituisce il valore di indice numero intero in corrispondenza del quale ha inizio la sottostringa corrispondente. Altrimenti, questa funzione restituisce il valore 0 . |
issubstring_count(SUBSTRING, N, STRING) |
Intero | Restituisce l'indice della Nth ricorrenza di SUBSTRING all'interno del STRING specificato. Se ci sono meno di N ricorrenze di SUBSTRING , viene restituito 0 . |
issubstring_lim(SUBSTRING, N, STARTLIM, ENDLIM, STRING) |
Intero | Questa funzione è uguale a issubstring , ma la corrispondenza è vincolata per iniziare su STARTLIM e per terminare su ENDLIM . I vincoli STARTLIM o ENDLIM possono essere disabilitati fornendo un valore false per entrambi gli argomenti - ad esempio, issubstring_lim(SUBSTRING, N, false, false,
STRING) è uguale a issubstring . |
isuppercode(CHAR) |
Booleano | Restituisce un valore vero se CHAR rappresenta una lettera maiuscola. Altrimenti, questa funzione restituisce il valore 0 . Ad esempio, sia isuppercode(``) che isuppercode(country_name(2)) sono espressioni valide. |
last(STRING) |
Stringa | Restituisce l'ultimo carattere CHAR di STRING (che deve contenere almeno un carattere). |
length(STRING) |
Intero | Restituisce la lunghezza della stringa STRING (ossia il numero di caratteri in essa contenuti). |
locchar(CHAR, N, STRING) |
Intero | Utilizzata per identificare la posizione dei caratteri nei campi simbolici. La funzione ricerca la stringa STRING per il carattere CHAR , iniziando la ricerca al carattere Nth di STRING . Questa funzione restituisce un valore che indica la posizione (a partire da N ) in cui si trova il carattere. Se il carattere non viene trovato, questa funzione restituisce il valore 0. Se la funzione ha un offset non valido (N) (ad esempio, un offset che supera la lunghezza della stringa), questa funzione restituisce $null$ . Ad esempio, locchar(`n`, 2,
web_page) ricerca nel campo denominato web_page il carattere `n` che inizia al secondo carattere nel valore del campo. Assicurarsi di utilizzare le virgolette singole per incapsulare il carattere specificato. |
locchar_back(CHAR, N, STRING) |
Intero | Simile a locchar , ma la ricerca viene eseguita all'indietro a partire dal carattere Nth . Ad esempio, locchar_back(`n`, 9,
web_page) ricerca il campo web_page partendo dal nono carattere e spostandosi all'indietro verso l'inizio della stringa. Se contiene un offset non valido, per esempio superiore alla lunghezza della stringa, questa funzione restituirà $null$ . Idealmente, è necessario utilizzare locchar_back insieme alla funzione length(<field>) per utilizzare dinamicamente la lunghezza del valore corrente del campo. Ad esempio, locchar_back(`n`, (length(web_page)), web_page) . |
lowertoupper(CHAR) lowertoupper (STRING) |
CHAR o String | L'input può essere rappresentato da una stringa o da un carattere,
utilizzato in questa funzione per restituire un nuovo
elemento dello stesso tipo, con i caratteri minuscoli convertiti nei relativi maiuscoli. Ad esempio, lowertoupper(`a`) , lowertoupper(“My string”) e lowertoupper(field_name(2)) sono tutte espressioni valide. |
matches |
Booleano | Restituisce true se una stringa corrisponde a un modello specificato. Il modello deve essere un letterale stringa; non può essere un nome campo contenente un modello. È possibile includere un punto interrogativo (? ) nel modello in modo che corrisponda esattamente a un carattere; un asterisco (* ) corrisponde a zero o più caratteri. Per far corrispondere un punto interrogativo letterale o un asterisco (piuttosto che utilizzarli come caratteri jolly), utilizzare una barra retroversa (\ ) come carattere escape. |
replace(SUBSTRING, NEWSUBSTRING, STRING) |
Stringa | All'interno della STRING specificata, sostituisce tutte le istanze della SUBSTRING con la NEWSUBSTRING . |
replicate(COUNT, STRING) |
Stringa | Restituisce una stringa costituita dalla stringa originale copiata il numero di volte specificato. |
stripchar(CHAR,STRING) |
Stringa | Consente di rimuovere i caratteri specificati da una stringa o campo. È possibile utilizzare questa funzione, per esempio, per rimuovere dai dati i simboli aggiuntivi, come i simboli di valuta, in modo da ottenere un nome o un numero semplice. Ad esempio, utilizzando la sintassi stripchar(`$`, 'Cost') viene restituito un nuovo campo con il simbolo del dollaro rimosso da tutti i valori. Assicurarsi di utilizzare le virgolette singole per incapsulare il carattere specificato. |
skipchar(CHAR, N, STRING) |
Intero | Ricerca la stringa STRING per qualsiasi carattere diverso da CHAR , a partire dal carattere Nth . Questa funzione restituisce una sottostringa intera che indica il punto in cui viene trovato uno o 0 se ogni carattere da Nth in poi è un CHAR . Se contiene un offset non valido, per esempio superiore alla lunghezza della stringa, questa funzione restituirà $null$ . locchar viene spesso utilizzato insieme alle funzioni skipchar per determinare il valore di N (il momento in cui iniziare la ricerca della stringa). Ad esempio, skipchar(`s`, (locchar(`s`, 1,
"MyString")), "MyString") . |
skipchar_back(CHAR, N, STRING) |
Intero | Simile a skipchar , ma la ricerca viene eseguita all'indietro, a partire dal carattere Nth . |
startstring(N, STRING) |
Stringa | Estrae i primi N caratteri dalla stringa specificata. Se la lunghezza della stringa è inferiore o uguale alla lunghezza specificata, rimane invariata. |
strmember(CHAR, STRING) |
Intero | Equivale a locchar(CHAR, 1, STRING) . Restituisce una sottostringa intera che indica il punto in cui si verifica per la prima volta CHAR o 0 . Se contiene un offset non valido, per esempio superiore alla lunghezza della stringa, questa funzione restituirà $null$ . |
subscrs(N, STRING) |
CHAR | Restituisce il Nth carattere CHAR della stringa di immissione STRING . Per questa funzione è inoltre disponibile la forma abbreviata STRING(N) . Ad esempio, lowertoupper(“name”(1)) è un'espressione valida. |
substring(N, LEN, STRING) |
Stringa | Restituisce una stringa SUBSTRING , che consiste di LEN caratteri della stringa STRING , a partire dal carattere nell'indice N. |
substring_between(N1, N2, STRING) |
Stringa | Restituisce la sottostringa di STRING che ha inizio in corrispondenza dell'indice N1 e termina con l'indice N2 . |
textsplit(STRING, N, CHAR) |
Stringa | textsplit(STRING,N,CHAR) restituisce la sottostringa tra la ricorrenza Nth-1 e Nth di CHAR . Se N è 1 , restituirà la sottostringa dall'inizio di STRING fino a ma non includendo CHAR . Se N-1 è l'ultima ricorrenza di CHAR , restituirà la sottostringa dalla Nth-1 ricorrenza di CHAR alla fine della stringa. |
trim(STRING) |
Stringa | Rimuove i caratteri spazio vuoto iniziale e finale dalla stringa specificata. |
trimstart(STRING) |
Stringa | Rimuove i caratteri spazio vuoto iniziale dalla stringa specificata. |
trimend(STRING) |
Stringa | Rimuove i caratteri spazio vuoto finale dalla stringa specificata. |
unicode_char(NUM) |
CHAR | L'input deve essere un valore decimale, non esadecimale. Restituisce il carattere con valore Unicode NUM . |
unicode_value(CHAR) |
NUM | Restituisce il valore Unicode di CHAR . |
uppertolower(CHAR) uppertolower (STRING) |
CHAR o String | L'input può essere rappresentato da una stringa o da un carattere, utilizzato in questa funzione per restituire un nuovo elemento dello stesso tipo, con i caratteri maiuscoli convertiti nei relativi minuscoli. Ricordarsi di specificare le stringhe con virgolette doppie e i caratteri con virgolette singole posteriori. I nomi semplici di campo non devono essere racchiusi tra virgolette. |