Ceci est une unité implémentant des fonctions à l'image de ce qui peut être fait en REXX.
Elle contient les fonctions de traitement des chaînes de caractère :
Le séparateur par défaut est le blanc
RWord : Donne un mot dans une chaine
ex : RWord('TEST LIGNE',2) donne LIGNE
ex : RWord('TEST;LIGNE',2,';') donne LIGNE
RWordSuite : Donne un mot et sa suite dans une chaine
ex : RWordSuite('TEST LIGNE SUITE',2) donne LIGNE SUITE
ex : RWordSuite('TEST;LIGNE;SUITE',2,';') donne LIGNE;SUITE
RWordPrec : Donne un mot et le début dans une chaine
ex : RWordPrec('TEST LIGNE SUITE',2) donne TEST LIGNE
ex : RWordPrec('TEST;LIGNE;SUITE',2,';') donne TEST;LIGNE
RWords : Donne le nombre de mots dans une chaine
ex : RWords('TEST LIGNE SUITE',2) donne 3
ex : RWords('TEST;LIGNE;SUITE',2,';') donne 3
RLeft : Donne Lg caractères à partir de la gauche
ex : RLeft('TEST LIGNE SUITE',3) donne TES
RRight : Donne Lg caractères à partir de la droite
ex : RRight('TEST LIGNE SUITE',3) donne ITE
RSubstr : Donne Lg caractères à partir de la position Index
ex : RSubstr('TEST LIGNE SUITE',3,6) donne T LIGN
//Donne Lg caractères à partir de la position Index avec un Padding
Function RPad(Lig:String;Lg:Integer;Pad:String):String;
Function RPadLeft(Lig:String;Lg:Integer;Pad:String):String;
//Donne la position d'un mot dans une ligne en fonction d'un séparateur
Function RWordPos(Mot,Lig,Sep:String=''):Integer;
//Enlève un mot d'une phrase en tenant compte du séparateur
Function RDelWord(Lig:String;Ind:Integer;Sep:String=''):String;
//Enlève le dernier mot d'une phrase en tenant compte du séparateur
Function RDelLastWord(Lig:String;Sep:String=''):String;
//Change un mot dans une Phrase par sa position
Function RChgWord(Lig:String;Ind:Integer;NewWord:String;Sep:String=''):String;
//Donne la position d'un mot dans une chaine en nombre de mots
Function RWordIndex(Mot,Lig,Sep:String=''):Integer;
//Donne le dernier mot d'une ligne
Function RLastWord(Lig,Sep:String=''):String;
//Change le séparateur de la ligne
Function RChgSep(Lig,SepAv,SepAp:String):String;
//Eclate une ligne vers une Liste selon un séparateur
Function RSplit(Lig:String;Sep:String=''):TStrings;
//Joint une Liste vers une Ligne avec un séparateur
Function RJoin(Liste:TStrings;Sep:String=''):String;