%TRIMR (末尾の文字のトリミング)

%TRIMR(string {: characters to trim})

1 つのパラメーターのみが指定された %TRIMR は、すべての後書きブランクを除去したうえで、 指定されたストリングを戻します。

2 つのパラメーターが指定された %TRIMR は、トリミング対象文字パラメーター で 末尾の文字を除去したうえで、指定されたストリングを戻します。

このストリングは、文字、図形、また は UCS-2 のどのデータでもかまいません。

トリミング対象文字 パラメーターを指定する場合には、 ストリング・パラメーターと同じタイプを指定する必要があります。

定義仕様書のキーワードのパラメーターとして指定する場合には、ストリング・ パラメーターは定数でなければなりません。
注: 定義キーワードのパラメーターでは、2 つのパラメーターを使用して %TRIMR を指定することはサポートされません。

詳細については、ストリング命令または 組み込み関数を参照してください。

図 1. %TRIMR の例
 *..1....+....2....+....3....+....4....+....5....+....6....+....7...+....
D*Name++++++++++ETDsFrom+++To/L+++IDc.Keywords+++++++++++++++++++++++++
D Location        S             16A   varying
D FirstName       S             10A   inz ('Chris')
D LastName        S             10A   inz ('Smith')
D Name            S             20A   varying

     // LOCATION will have the value '  Toronto, Ontario'.
     Location = %trimr ('  Toronto, Ontario  ');
     // Name will have the value 'Chris Smith:'.
     Name = %trimr (FirstName) + ' ' + %trimr (LastName) + ':';
図 2. ブランク以外の文字のトリミング
     string = '(' + %trimr('$******5.27***      ' : '$*') + ')';
     // string is now '($******5.27***      )'
     //
     // Nothing has been trimmed from the right-hand side because
     // the right-most character is a blank, and a blank does not
     // appear in the 'characters to trim' parameter

     string = '(' + %trimr('$******5.27***      ' : '$ *') + ')';
     // string is now '($******5.27)'