外部 REXX 関数でのピクチャー・ストリングと正規表現の使用
ピクチャー・ストリングは、変更処理を実行する関数の検索値と置換値、および包含処理を実行する関数の検索値に対してサポートされています。正規表現は、変更処理と包含処理を実行する関数の検索値に対してサポートされています。
| 関数 | 正規表現 | ピクチャー・ストリング |
|---|---|---|
| CHANGE | 前回の値 | 古い値と新しい値 |
| CHG_OUT | 前回の値 | 古い値と新しい値 |
| CHG_VAR | 前回の値 | 古い値と新しい値 |
| CMP_DATE | contains 演算子の値 | contains 演算子の値 |
| CONTAINS | Needle の値 | Needle の値 |
| FLD_CO | Needle の値 | Needle の値 |
| FLDI | contains 演算子の値 | contains 演算子の値 |
| FLDO | contains 演算子の値 | contains 演算子の値 |
| TESTC | contains 演算子の値 | contains 演算子の値 |
| TFLD | contains 演算子の値 | contains 演算子の値 |
- ピクチャー・ストリングの指定
- ピクチャー・ストリングを指定する際のルールについては、「CHANGE/CX 基本コマンド」を参照してください (string1 および string2)。これらの値は、代替引用符で囲む必要があります。「例」を参照してください。
- 正規表現の指定
- 正規表現を指定する際のルールについては、「CHANGE/CX 基本コマンド」を参照してください (string1)。この値は、代替引用符で囲む必要があります。「例」を参照してください。
注:
正規表現の解釈に使用される CCSID 値は次のとおりです。
- TSO/ISPF および CICS では、関連付けられた端末 CCSID が使用されます。
- バッチの場合、
‘$$FILEM SET CCSID=nnnnn’値が指定された場合に使用されます。CCSID ステートメントがない場合は、CCSID のインストール・オプションが使用されます。
例
- 例 1: ピクチャー・ストリングで CHG_OUT を使用して出力レコードを大文字にします。
-
CHG_OUT("P'<'","P'>'",0) - 例 2: 正規表現を使用して、JCL からすべての「,BLKSIZE=number」を削除します。
-
CHG_OUT("RC',BLKSIZE=[0-9]{1,5}'RC","’’",0,,,' ') - 例 3: 列 1 ~ 60 で「Hat」または「Mat」と「Line」または「Lane」を含むレコードを検索します。
-
IF FLDI(1,60,,'ACO',"RC'[HM]at'","RC'L[ai]ne'") then OVLY_OUT('Found Hat or Mat and Line or Lane',60) - 例 4: 123 または 124 で終わる 7 桁のシリアル番号を含むレコードを検索します。
-
IF FLD_CO(,,,”p'SN####123'”,”p'SN####124'”) Then Return 'PROCESS'