ストリング命令

ストリング命令を次の表に示します。

ストリング命令には、連結、走査、サブストリング化、変換、および検査が あります。 ストリング命令を使用できるのは、文字フィールド、図形フィールド、または UCS-2 フィールドに対してだけです。

CAT 命令では、2 つのストリングが連結されて 1 つのストリングになります。

CHECK および CHECKR 命令では、演算項目 2 のそれぞれの文字が演算項目 1 の有効な文字の間にあるかどうかが検査されます。CHECK では左から右に、CHECKR では右から左に検査されます。

SCAN 命令では、演算項目 1 に指定された別のストリングを見付けるために、 演算項目 2 の基本ストリングが走査されます。

SUBST 命令では、演算項目 2 の基本ストリングから指定されたストリングが抜き出さ れます。抜き出されたストリングは、結果のフィールドに入れられます。

XLATE 命令では、演算項目 1 の変換元および変換先ストリングに従って、演算項目 2 の文字が変換されます。
注: 演算項目 1、演算項目 2、または結果フィールドに形象定数を使用することは できません。演算項目 1 と結果のフィールドまたは演算項目 2 と結果のフィールドに、デー タ構造のオーバーラップがあってはなりません。

ストリング命令では、演算項目 1 と演算項目 2 は 2 つの部分を持つことがで きます。 両方の部分を指定する場合には、コロンで区切らなければなりません。 このオプションは、CAT、CHECK、CHECKR、および SUBST 以外のすべての命令に 適用されます (これらの命令では演算項目 2 だけに適用されます)。

CAT、SUBST、または XLATE 命令の命令拡張として P を指定した場合には、 操作の後で結果のフィールドに右側からブランクが埋め込まれます。

詳細については、それぞれの命令の項を参照してください。

図形フィールドにストリング命令を使用する場合 には、演算項目 1、演算項目 2、および結果のフィールドのデータは すべて図形でなければなりません。図形文字の長さ、開始位置、およびブランクの数に数値が指定されている場合 には、その値は 2 バイト文字を表します。

UCS-2 フィールドにストリング命令を使用する場合 には、演算項目 1、演算項目 2、および結果のフィールドのデータは すべて UCS-2 でなければなりません。UCS-2 文字の長さ、開始位置、および ブランクの数に数値が指定されている場合には、その値は 2 バイト文字を表します。

混合モードの文字データの図形部分にストリング命令が使用されている場合 には、開始位置、長さ、およびブランクの数は 1 バイト文字を表します。データの保全性の維持はユーザーの責任になります。