データ項目の分割 (UNSTRING)
UNSTRING ステートメントは、送信フィールドを複数の受信フィールドに分割するために使用します。
1 つの UNSTRING ステートメントを、幾つかの MOVE ステートメントの代わりに使用できます。
UNSTRING ステートメントでは、以下のものを指定することができます。
- 区切り文字。区切り文字の 1 つが送信フィールドで検出されると、現行受信フィールドは受け取りを停止し、次のフィールド (ある場合) が受け取りを開始します (DELIMITED BY 句)
- 区切り文字用のフィールド。送信フィールドで区切り文字が検出されると、現行受信フィールドは受け取りを停止します (DELIMITER
IN 句)
- 現行受信フィールドに入れられた文字の数を保管する整数データ項目 (COUNT IN 句)
- UNSTRING 処理が開始される送信フィールド内の左端文字位置を示す、整数データ項目 (WITH POINTER 句)
- 操作対象の受信フィールドの数の計算値を保管する、整数データ項目 (TALLYING IN 句)
- 送信データ項目の最後に達する前にすべての受信フィールドが満杯になった場合に実行する処置 (ON OVERFLOW 句)
送信データ項目および DELIMITED BY 句の区切り文字は、カテゴリー英字、英数字、英数字編集、DBCS、国別、または国別編集にする必要があります。
受信データ項目は、カテゴリー英字、英数字、数値、DBCS、または国別にすることができます。数値の受信データ項目は、ゾーン 10 進数または国別 10 進数にする必要があります。受信データ項目が何を持っているかによって次のような違いが生じます。
- USAGE DISPLAY を持っている場合、送信項目およびステートメント内のそれぞれの区切り文字項目は USAGE DISPLAY を持っている必要があり、ステートメント内のそれぞれのリテラルは英数字でなければなりません。
- USAGE NATIONAL を持っている場合、送信項目およびステートメント内のそれぞれの区切り文字項目は USAGE NATIONAL を持っている必要があり、ステートメント内のそれぞれのリテラルは国別でなければなりません。
- USAGE DISPLAY-1 を持っている場合、送信項目およびステートメント内のそれぞれの区切り文字項目は USAGE DISPLAY-1 を持っている必要があり、ステートメント内のそれぞれのリテラルは DBCS でなければなりません。
例: UNSTRING ステートメント
関連概念
Unicode および言語文字のエンコード
関連タスク
ストリングの結合および分割におけるエラーの処理
関連参照
UNSTRING ステートメント
(「COBOL for Windows 言語解説書」)
データのクラスおよびカテゴリー
(「COBOL for Windows 言語解説書」)
|