(a) |
TALLYING(計数)指定とREPLACING(置換)指定の作用対象の順序は,INSPECT文で左から右に書かれた順序による.最初の定数-1が,一意名-1の左端からそれと同じ文字数の文字列と比較される.定数-1と一意名-1のその部分とが一致するのは,それらが1字ずつ比較して等しく,更に次の条件のいずれかを満たす場合とする.
(i) |
LEADING指定もFIRST指定も書かれていない.
|
(ii) |
LEADING指定が定数-1に書かれ,定数-1が一般規則(10)〜(13)に従って先頭に現れた.
|
(iii) |
FIRST指定が定数-1に書かれ,定数-1が一般規則(10)〜(13)に従って最初に現れた.
|
|
(b) |
最初の定数-1の比較で一致しなかった場合,続く定数-1があるときには,比較が繰り返される.そして,一致するか,又は次に比較すべき定数-1がなくなるまで繰り返される.次に続く定数-1がなくなった場合,一意名-1の文字位置のうち,最後の比較の周期において最左端とみなされた文字位置のすぐ右側が,次の比較の周期における最左端文字位置とみなされ,再び定数-1に対し比較の周期が開始される.
|
(c) |
一致した場合には,計算や置換が一般規則(10)〜(13)によって行われる.一意名-1のデータ項目の文字位置のうち,一致した文字の最右端文字のすぐ右側の文字位置が,次の比較における最左端文字位置とみなされ,再び最初の定数-1に対し比較の周期が開始される.
|
(d) |
比較操作が続くのは,一意名-1の最右端文字位置が一致の対象となったか,又は最左端の文字位置とみなされているかのいずれかまでとする.この状態が生ずると,文字列検査は終了する.
|
(e) |
CHARACTERS指定を書くと,定数-1が指定されたかのように(a)〜(d)の比較操作が1文字の暗黙の作用対象に対して行われる.ただし,この暗黙の作用対象の内容と一意名-1のデータ項目の内容との比較は行われない.この場合,この暗黙の作用対象は,一意名-1のデータ項目の内容の,現在の比較の周期における最左端文字と常に一致するものとみなされる.
|