Estrazione porzione di stringa
La funzione %SUBSTRING oppure %SST (http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rbam6/subst.htm) consente di estrarre una porzione di stringa da una variabile di tipo *CHAR.
%SUBSTRING(character-variable-name starting-position length)
Conversione in stringa
La funzione %CHAR (http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rbam6/rbam6charbif.htm) consente di convertire una variabile di tipo *LGL, *DEC, *INT o *UINT in una variabile di tipo *CHAR.
%CHAR(convert-argument)
Conversione minuscolo/maiuscolo
Dalla versione IBM i 7.2 sono disponibili due nuove funzioni che consentono la conversione in maiuscolo o minuscolo in un programma CLP: %LOWER (http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rbam6/rbam6lowerbif.htm) e %UPPER (http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rbam6/rbam6upperbif.htm)
Nelle release precedenti in mancanza di queste BIF si può utilizzare l’API QLGCNVCS (cfr. http://www.itjungle.com/fhg/fhg111412-story01.html e http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_73/apis/QLGCNVCS.htm)
Ricerca in una stringa
Da IBM i 7.1 è disponibile la funzione %SCAN (http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rbam6/rbam6scanbif.htm) consente di cercare una stringa all’interno di un’altra stringa.
%SCAN(search-argument source-string [starting-position])
Eliminazione spazi
Da IBM i 7.1 sono disponibili le funzioni %TRIM (http://www.ibm.com/support/knowledgecenter/ssw_ibm_i_72/rbam6/rbam6trimbif.htm), %TRIML, %TRIMR che consentono di rimuovere gli spazi (o un altro carattere) dall’inizio e/o dalla fine di una stringa
%TRIM(character-variable-name [characters-to-trim])