INSPECT 文 (計数、置換、および変換)

INSPECT 文を使用すると、特定の文字列の出現回数の算出、別の文字列への置換、および文字の組み合わせの変換を実行できる。この文字列検査の条件の設定は、非常に複雑になり得る。この動詞の変形および用途をいくつか以下に例示する。

次に示す INSPECT 文の各例では、この文を実行する直前の COUNT-n はゼロであるとする。各例の結果は、最後の例を除き、2 つの連続する INSPECT 文を実行した後に表示される。

例 1:

     inspect item tallying
         count-0 for all "AB", all "D"
         count-1 for all "BC"
         count-2 for leading "EF"
         count-3 for leading "B"
         count-4 for characters;

     inspect item replacing
         all "AB" by "XY", "D" by "X"
         all "BC" by "VW"
         leading "EF" by "TU"
         leading "B" by "S"
         first "G" by "R"
         first "G" by "P"
         characters by "Z"
ITEM の初期値 COUNT-0 COUNT-1 COUNT-2 COUNT-3 COUNT-4 ITEM の最終値
EFABDBCGABEFGG 3 1 1 0 5 TUXYXVWRXYZZPZ
BABABC 2 0 0 1 1 SXYXYZ
BBBC 0 1 0 2 0 SSVW

例 2:

     inspect item tallying
         count-0 for characters
         count-1 for all "A";

     inspect item replacing
         characters by "Z"
         all "A" by "X"
ITEM の初期値 COUNT-0 COUNT-1 ITEM の最終値
BBB 3 0 ZZZ
ABA 3 0 ZZZ

例 3:

     inspect item tallying
         count-0 for all "AB" before "BC"
         count-1 for leading "B" after "D"
         count-2 for characters after "A" before "C"

     inspect item replacing
         all "AB" by "XY" before "BC"
         leading "B" by "W" after "D"
         first "E" by "V" after "D"
         characters by "Z" after "A" before "C"
ITEM の初期値 COUNT-0 COUNT-1 COUNT-2 ITEM の最終値
BBEABDABABBCABEE 3 0 2 BBEXYZXYXYZCABVE
ADDDDC 0 0 4 AZZZZC
ADDDDA 0 0 5 AZZZZZ
CDDDDC 0 0 0 CDDDDC
BDBBBDB 0 3 0 BDWWWDB

例 4:

     inspect item tallying
         count-0 for all "AB" after "BA" before "BC";

     inspect item replacing
         all "AB" by "XY" after "BA" before "BC"
ITEM の初期値 COUNT-0 ITEM の最終値
ABABABABC 1 ABABXYABC

例 5:

     inspect item converting
  "ABCD" to "XYZX" after quote before "#".

上記の INSPECT は、次の INSPECT に等しい。

     inspect item replacing
         all "A" by "X" after quote before "#"
         all "B" by "Y" after quote before "#"
         all "C" by "Z" after quote before "#"
         all "D" by "X" after quote before "#"
ITEM の初期値 ITEM の最終値
AC"AEBDFBCD#AB"D AC"XEYXFYZX#AB"D