TRIM : Suppression des occurrences de début et de fin

Comment :

Langages disponibles : reporting

La fonction TRIM supprime les occurrences à droite et/ou à gauche d'un modèle dans une chaîne de caractères.

Il existe une version de la fonction TRIM qui est disponible uniquement dans le langage Maintain. Pour plus d'informations sur cette fonction, consultez TRIM : Suppression des occurrences à droite (Maintain).


Haut de page

x
Syntaxe : Supprimer les occurrences à gauche et à droite
TRIM(trim_where, source_string, length, pattern, sublength, output)

où :

trim_where

Alphanumérique

est l'une des suivantes, indiquant où supprimer le modèle :

'L' supprime les occurences à gauche.

'T' supprime les occurrences à droite.

'B' supprime les occurrences à gauche et à droite.

source_string

Alphanumérique

est la chaîne à découper encadrée par des guillemets simples, ou le champ contenant celle-ci.

string_length

Entier

est le nombre de caractères dans la chaîne source.

pattern

Alphanumérique

est le modèle de chaîne de caractères à supprimer entouré de guillemets simples.

sublength

Entier

est le nombre de caractères du modèle.

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 de début

TRIM supprime les occurrences de début des caractères BR dans le champ DIRECTOR et stocke le résultat dans un champ au format A17 :

TABLE FILE MOVIES
PRINT  DIRECTOR AND
COMPUTE
  TRIMDIR/A17 = TRIM('L', DIRECTOR, 17, 'BR', 2, 'A17');
  WHERE DIRECTOR CONTAINS 'BR'
END

La sortie est :

DIRECTOR          TRIMDIR
--------          -------
ABRAHAMS J.       ABRAHAMS J.
BROOKS R.         OOKS R.
BROOKS J.L.       OOKS J.L. 


Exemple : Suppression des occurrences à droite

TRIM supprime les occurrences à droite des caractères ER dans TITLE. De façon à supprimer les caractères de fin non vides, les espaces de fin doivent être d'abord supprimés. Le champ TITLE a des espaces de fin. Par conséquent, TRIM ne supprime pas les caractères ER à la création du champ TRIMT. Le champ SHORT n'a pas d'espaces de fin. Par conséquent, TRIM supprime les caractères ER de fin à la création du champ TRIMS :

DEFINE FILE MOVIES
SHORT/A19 = SUBSTR(19, TITLE, 1, 19, 19, SHORT);
END
TABLE FILE MOVIES
PRINT  TITLE  IN 1  AS 'TITLE: '
       SHORT  IN 40 AS 'SHORT: ' OVER
COMPUTE
  TRIMT/A39 = TRIM('T', TITLE, 39, 'ER', 2, 'A39'); IN 1 AS 'TRIMT: '
COMPUTE
  TRIMS/A19 = TRIM('T', SHORT, 19, 'ER', 2, 'A19'); IN 40 AS 'TRIMS: ' 
WHERE TITLE LIKE '%ER'
END

La sortie est :

TITLE:   LEARN TO SKI BETTER         SHORT:   LEARN TO SKI BETTER
TRIMT:   LEARN TO SKI BETTER         TRIMS:   LEARN TO SKI BETT  
TITLE:   FANNY AND ALEXANDER         SHORT:   FANNY AND ALEXANDER
TRIMT:   FANNY AND ALEXANDER         TRIMS:   FANNY AND ALEXAND

Information Builders