REPLACING 句

以下の説明では、各オペランドは、次のいずれかで構成できます。
  • 疑似テキスト
  • ID
  • リテラル
  • COBOL 語 (COPY を除く)
  • 関数 ID

REPLACING 句が指定されている場合、 ライブラリー・テキストがコピーされ、ライブラリー・テキスト内にあるオペランド-1 は、それが完全に一致するたびに関連するオペランド-2 によって置き換えられます。

構文図を読む構文図をスキップする
REPLACING 句 - 形式

              .----------------------------------------------------.   
              V                                                    |   
>>-REPLACING----+-==疑似テキスト-1==-+--BY--+-==疑似テキスト-2==-+-+-------><
                +-ID-1---------------+      +-ID-2---------------+     
                +-リテラル-1---------+      +-リテラル-2---------+     
                '-語-1---------------'      '-語-2---------------'     

疑似テキスト -1、疑似テキスト -2
疑似テキストは、疑似テキスト分離 文字 (==) によって結合された (ただし分離文字は含まない) 一連のテキスト 語、コメント行、または区切りスペースです。

疑似テキスト -1 は、分離文字コンマまたは分離文字セミコロン以外の、最低 1 個のテキスト語を含んでいなければなりません。 最初と最後のスペースは、テキスト比較処理には含まれません、複数の組み込みスペースはシングル・スペースであると見なされます。

疑似テキスト -2 は、テキスト語を含んでいる必要はなく、また、スペース文字またはコメント行 (あるいはその両方) だけから構成できます。

例えば、ライブラリー・メンバー TEXTA が次の記入項目から構成される場合、
01  AA-DATA.
  10  AA-ID      PIC X(9).
  10  AA-TYPE    PIC X(1).
プログラマーは、次のように COPY ステートメントを使用して疑似テキストを置き換えることができます。
    COPY TEXTA REPLACING ==01 AA-DATA== BY ==05 EE-DATA==.
                         ==AA-ID==      BY ==EE-ID==.
                         ==AA-TYPE==    BY ==EE-TYPE==.
結果のテキストは、次のように書かれている場合と同様に扱われます。
05  EE-DATA.
  10  EE-ID      PIC X(9).
  10  EE-TYPE    PIC X(1).

疑似テキスト -1 には、少なくともテキスト語が含まれる必要があります。 定義により、テキスト語は分離文字によって結合されるため、 疑似テキストを使用して置換する語の一部を選択することはできません (例えば、データ名の中の接頭部)。 一致するものを検出するために、完全なテキスト語を使用する必要があります。 ただし、マッチングの目的のためだけに使用されており、ソース・プログラムにはコピーされない分離文字を使用して、 ライブラリー・テキスト内にあるテキスト語を複数のテキスト語に分割することによって、 そのテキスト語の部分的な置き換えをシミュレートすることはできます。 この方式の例については コーディング例を参照してください。

IBM Extension

IBM Extension 疑似テキスト -1 または疑似テキスト -2 に、DBCS 文字ストリングまたは国別文字ストリングを含めることができます。 ただしこの場合、疑似テキストは 2 行にわたってはなりません。 End of IBM Extension

End of IBM Extension
ID-1、ID-2
データ部のどのセクションでも定義できます。

関数 ID にすることができます。

リテラル-1、リテラル-2
数字または非数字にすることができます。
IBM Extension

IBM Extension 変更の始まり浮動小数点リテラル、DBCS リテラル、または国別リテラルにすることもできます。変更の終わり End of IBM Extension

End of IBM Extension
語 -1、語 -2
任意の単一の COBOL 語 (COPY を除く) にすることができます。

マッチングのために、各 ID-1、リテラル -1、または語 -1 は、 それぞれ ID-1、リテラル -1、または語 -1 だけを含む疑似テキストとして取り扱われます。