compareStr()

システム関数 StrLib.compareStr は、実行時に 2 つのサブストリングを ASCII または EBCDIC 順序と比較します。

  StrLib.compareStr(
    target VagText in,
    targetSubstringIndex INT in,
    targetSubstringLength INT in,
    source VagText in,
    sourceSubstringIndex INT in,
    sourceSubstringLength INT in  )
  returns (result INT)
result
関数から戻される (INT 型か、長さが 9 で小数部がない BIN 型と同等と定義された) 次のいずれかの値を受け取る数値項目。
-1
target を基にしたサブストリングは、 source を基にしたサブストリングより小さい
0
target を基にしたサブストリングは、 source を基にしたサブストリングと等しい
1
target を基にしたサブストリングは、 source を基にしたサブストリングより大きい
target
ターゲット・サブストリングの派生元のストリング。 項目またはリテラルを使用できます。
targetSubStringIndex
target の先頭バイトの指標値が 1 である場合に、target のサブストリングの開始バイトを識別する。この指標には、整数リテラルを使用できます。または、この指標には、INT 型または長さが 9 で小数部がない BIN 型と同等と定義された項目を使用できます。
targetSubStringLength
target から派生するサブストリングのバイト数を識別する。 長さは整数リテラルとすることができます。または、この指標には、INT 型または長さが 9 で小数部がない BIN 型と同等と定義された項目を使用できます。
source
ソース・サブストリングの派生元のストリング。 項目またはリテラルを使用できます。
sourceSubStringIndex
source の先頭バイトの指標値が 1 である場合に、source のサブストリングの開始バイトを識別する。この指標には、整数リテラルを使用できます。または、この指標には、INT 型または長さが 9 で小数部がない BIN 型と同等と定義された項目を使用できます。
sourceSubStringLength
source から派生するサブストリングのバイト数を識別する。 長さは整数リテラルとすることができます。または、この指標には、INT 型または長さが 9 で小数部がない BIN 型と同等と定義された項目を使用できます。

サブストリング値に関して、バイト対バイトのバイナリー比較が実行されます。サブストリングの長さが一致しない場合は、比較する前に、短い方のサブストリングにスペースが埋め込まれます。

定義に関する考慮事項

以下の値が sysVar.errorCode で戻されます。
8
指標が 1 より小さいか、ストリングの長さよりも大きい。
12
長さが 1 より小さい。
20
無効な 2 バイト指標である。DBCHAR ストリングや UNICODE ストリングの指標が、2 バイト文字の中間を指しています。
24
無効な 2 バイトの長さである。DBCHAR ストリングや UNICODE ストリングの長さを示すバイト数が、奇数になっています (2 バイト文字の長さは常に偶数になります)。

  target = "123456";
  source = "34";
  result =
    StrLib.compareStr(target,3,2,source,1,2);
  // result = 0

関連する概念
EGL 関数の構文図

関連する参照項目
EGL ライブラリー StrLib

ご利用条件 | フィードバック
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.
(C) Copyright IBM Japan 2005.