strLib.findStr

システム関数 strLib.findStr は、 あるサブストリングがストリング内で最初に現れる位置を検索します。


strLib.findStr 構文図
result
関数から戻される (INT 型か、長さが 9 で小数部がない BIN 型と同等と定義された) 次のいずれかの値を受け取る数値項目。
-1
検索ストリングが見付からない
0
検索ストリングが見付かった
source
ソース・サブストリングの派生元のストリング。 項目またはリテラルを使用できます。
sourceSubstringIndex
source の先頭バイトの指標値が 1 である場合に、source のサブストリングの開始バイトを識別する。この指標は、INT 型または長さが 9 で小数部がない BIN 型と同等と定義された項目とすることができます。
sourceStringLength
source から派生するサブストリングのバイト数を識別する。 この指標には、INT 型または長さが 9 で小数部がない BIN 型と同等と定義された項目を使用できます。
searchString
ソース・サブストリングの中で検索するストリング項目またはリテラル。 検索ストリングの末尾のブランクや NULL は、検索が開始される前に切り捨てられます。

ソース・サブストリングの中で searchString が検出されると、 そのロケーション (一致するサブストリングが始まるソース内のバイト) を 示すように sourceSubstringIndex が設定されます。 検出されない場合は、sourceSubstringIndex は変更されません。

定義に関する考慮事項

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

  source = "123456";
  sourceIndex = 1
  sourceLength = 6
  search = "34";
  result =
    strLib.findStr(source,sourceIndex,sourceLength,"34");
  // result = 0, sourceIndex = 3

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

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