LXRPIA13 文字列前後反転
サブルーチンID |
機能分類 |
サブルーチン名 |
テーブル名 |
---|---|---|---|
LXRPIA13 |
文字列処理 |
LXRCIA13 |
インタフェース
入力(区分:INPUT-PARM=I,CONSTANT=C) |
||||
---|---|---|---|---|
レベル |
項目名 |
属性 |
説明および設定値 |
区分 |
03 |
I-LENG |
P(3) |
長さ |
OL |
03 |
I-STR |
X(200) |
文字列 |
I |
− |
− |
− |
− |
− |
− |
− |
− |
− |
− |
− |
− |
− |
− |
− |
出力(区分:OUTPUT-PARM=O,RTN-CODE=R) |
||||
---|---|---|---|---|
レベル |
項目名 |
属性 |
説明および設定値 |
区分 |
03 |
O-STR |
X(200) |
文字列 |
O |
− |
− |
− |
− |
− |
03 |
O-RTN-CD |
X(10) |
リターンコード |
R |
− |
− |
− |
SPACE:正常終了 |
− |
− |
− |
− |
LXREA024:NUMERICエラー |
− |
− |
− |
− |
LXREA020:出力フィールド範囲外 |
− |
− |
− |
− |
LXREA008:入力文字列がスペース |
− |
− |
− |
− |
LXREA018:切り捨てが発生した |
− |
処理基準
-
文字列データの前後を置換する。
1.1 エラーチェックを行う。
1.2 入力文字列の有効桁数を取得し,
入力文字列(有効桁数) →出力文字列(1)
入力文字列(有効桁数-1)→出力文字列(2)
・
・
・
入力文字列(1) →出力文字列(有効桁数)
のようにして出力文字列を得る。
例1
I-STR :'ABCD' I-LENG :4 ↓ O-STR :'DCBA' O-RTN-CD:SPACE
例2
I-STR :'ABCDEF' I-LENG :4 ↓ O-STR :'FEDCBA' O-RTN-CD:'LXREA018'
例3
I-STR :'アイウエオ' I-LENG :5 ↓ O-STR :'オエウイア' O-RTN-CD:SPACE
注意事項
-
I-LENGについてNUMERICチェックを行い,数値でないときはリターンコードに'LXREA024'を返し,出力文字列にスペースを転送する。
-
1≦I-LENG≦200以外の時はリターンコードに'LXREA020'を返し,出力文字列にスペースを転送する。
-
入力文字列がスペースの場合はリターンコードに'LXREA008'を返す。出力文字列にスペースを転送する。
-
入力文字列の有効桁数>I-LENGのとき,リターンコードに'LXREA018'を返す。出力文字列には処理基準に従って編集した結果を返す。
-
このサブルーチンから(文字列有効桁数算出:LXRPIA09)を呼び出す。
-
EUC対応版,Unicode対応版で半角カナ含む場合でも例と同一の結果が得られる。
-
EUC対応版,Unicode対応版で半角カナを編集する場合,文字列長は実バイト長(EUC:2バイト/文字,Unicode:3バイト/文字)で指定する。