SAS - Stringhe

Le stringhe in SAS sono i valori racchiusi tra una coppia di virgolette singole. Anche le variabili stringa vengono dichiarate aggiungendo uno spazio e un segno $ alla fine della dichiarazione della variabile. SAS ha molte potenti funzioni per analizzare e manipolare le stringhe.

Dichiarazione di variabili stringa

Possiamo dichiarare le variabili stringa e i loro valori come mostrato di seguito. Nel codice seguente si dichiarano due variabili carattere di lunghezza 6 e 5. La parola chiave LENGTH viene utilizzata per dichiarare le variabili senza creare più osservazioni.

data string_examples;
   LENGTH string1 $ 6 String2 $ 5;
   /*String variables of length 6 and 5 */
   String1 = 'Hello';
   String2 = 'World';
   Joined_strings =  String1 ||String2 ;
run;
proc print data = string_examples noobs;
run;

Eseguendo il codice precedente otteniamo l'output che mostra i nomi delle variabili ei loro valori.

Funzioni stringa

Di seguito sono riportati gli esempi di alcune funzioni SAS che vengono utilizzate di frequente.

SUBSTRN

Questa funzione estrae una sottostringa utilizzando le posizioni iniziale e finale. In caso di mancata menzione della posizione finale, estrae tutti i caratteri fino alla fine della stringa.

Sintassi

SUBSTRN('stringval',p1,p2)

Di seguito la descrizione dei parametri utilizzati:

  • stringval è il valore della variabile stringa.
  • p1 è la posizione iniziale dell'estrazione.
  • p2 è la posizione finale di estrazione.

Esempio

data string_examples;
   LENGTH string1 $ 6 ;
   String1 = 'Hello';
   sub_string1 = substrn(String1,2,4) ;
   /*Extract from position 2 to 4 */
   sub_string2 = substrn(String1,3) ;
   /*Extract from position 3 onwards */
run;
proc print data = string_examples noobs;
run;

Eseguendo il codice precedente otteniamo l'output che mostra il risultato della funzione substrn.

TRIMN

Questa funzione rimuove lo spazio finale da una stringa.

Sintassi

TRIMN('stringval')

Di seguito la descrizione dei parametri utilizzati:

  • stringval è il valore della variabile stringa.
data string_examples;
   LENGTH string1 $ 7  ;
   String1='Hello  ';
   length_string1 = lengthc(String1);
   length_trimmed_string = lengthc(TRIMN(String1));
run;
proc print data = string_examples noobs;
run;

Eseguendo il codice precedente otteniamo l'output che mostra il risultato della funzione TRIMN.