STRIP : Supprimer un caractère dans une chaîne

Comment :

Langages disponibles : reporting, Maintain

La fonction STRIP supprime toutes les occurrences d'un caractère spécifique dans une chaîne. La chaîne de caractères résultante a la même longueur que l'originale mais elle est complétée à droite avec des espaces.


Haut de page

x
Syntaxe : Supprimer un caractère dans une chaîne
STRIP(length, source_string, char, output)

où :

length

Entier

est le nombre de caractère dans source_string et output, ou dans un champ contenant le nombre.

source_string

Alphanumérique

est la chaîne à partir de laquelle les caractères seront supprimés, ou un champ contenant la chaîne.

char

Alphanumérique

est le caractère à supprimer de la chaîne. Il peut s'agir d'un litéral alphanumérique entre guillemets simples, ou un champ qui contient les caractères. Si plus d'un caractère est fourni, le caractère le plus à gauche sera utilisé en tant que caractère de borne.

Remarque : pour supprimer des guillemets simples, utilisez deux guillemets consécutifs. Vous devez ensuite entourer cette combinaison de caractères avec des guillemets simples.

output

Alphanumérique

est le champ qui contient le résultat, ou le format de la valeur de sortie entre guillemets simples.



Exemple : Suppression des occurrences d'un caractère dans une chaîne

STRIP supprime toutes les occurence d'un point (.) depuis le champ DIRECTOR et stocke le résultat dans un champ au format A17 :

TABLE FILE MOVIES
PRINT DIRECTOR AND COMPUTE
SDIR/A17 = STRIP(17, DIRECTOR, '.', 'A17');
WHERE CATEGORY EQ 'COMEDY'
END

La sortie est :

DIRECTORS       SDIR
---------       ----
ZEMECKIS R.     ZEMECKIS R
ABRAHAMS J.     ABRAHAMS J
ALLEN W.        ALLEN W
HALLSTROM L.    HALLSTROM L
MARSHALL P.     MARSHALL P
BROOKS J.L.     BROOKS JL


Exemple : Supprimer les guillemets simples dans une chaîne

STRIP supprime toutes les occurrences de guillemet simple (') dans le champ TITLE et stocke le résultat dans un champ au format A39:

TABLE FILE MOVIES
PRINT TITLE AND COMPUTE
STITLE/A39 = STRIP(39, TITLE, '''', 'A39');
WHERE TITLE CONTAINS '''' 
END

La sortie est :

TITLE                           STITLE
-----                           ------
BABETTE'S FEAST                 BABETTES FEAST
JANE FONDA'S COMPLETE WORKOUT   JANE FONDAS COMPLETE WORKOUT
JANE FONDA'S NEW WORKOUT        JANE FONDAS NEW WORKOUT
MICKEY MANTLE'S BASEBALLTIPS    MICKEY MANTLES BASEBALL TIPS


Exemple : Supprimer les virgules d'une chaîne (Maintain)

STRIP supprime toutes les occurrences de virgule dans le champ TITLE :

MAINTAIN FILE MOVIES
FOR 10 NEXT MOVIECODE INTO MOVSTK
 WHERE TITLE CONTAINS ',';
COMPUTE I/I2=1;
REPEAT MOVSTK.FOCINDEX
TYPE "TITLE IS: <MOVSTK(I).TITLE"
COMPUTE NOCOMMA/A39=STRIP(39,MOVSTK().TITLE, ',',NOCOMMA);
TYPE "NEW TITLE IS: <NOCOMMA";
COMPUTE I=I+1
ENDREPEAT
END

La sortie est :

TITLE IS: SMURFS, THE
NEW TITLE IS: SMURFS THE

Information Builders