Menu principal                 [Fechar]


Linguagem de programação COBOL - INSPECT


Volta a página anterior

Volta ao Menu Principal


Desenvolvido por DORNELLES Carlos Alberto - Analista de Sistemas - Brasília DF.

INSPECT
A instrução INSPECT pode ser usada para substituir um caracter específico em um campo por outro. Ela também pode ser usada para contar o número de ocorrências de um determinado caracter.




Formato 1

O formato 1 pode ser usado para contar o número de vezes que um determinado caracter aparece.

Formato 1 do comando INSPECT



Primeiro exemplo
  INSPECT CAMPO-1 TALLYING CMP1 FOR ALL ZEROES

  INSPECT CAMPO-2 TALLYING CMP2 FOR CHARACTERS
                   BEFORE INITIAL ZEROES

  INSPECT CAMPO-3 TALLYING CMP3 FOR LEADING ZEROES


Resultado
Itens Conteúdo do resultado

CAMPO-1 = 000670 CMP1 = 4

CAMPO-2 = 123450 CMP2 = 5

CAMPO-3 = 007800 CMP3 = 2


INSPECT
O formato da instrução INSPECT sempre conta o número de ocorrências do identificador-3 ou do Literal-1. Literal-1 deve ser um caracter isolado ou uma constante figurativa. ZEROES, SPACES, 3 e 'X' são entradas válidas. A contagem obtida é colocada em identificador-2, que normalmente é definido como item elementar na WORKING-STORAGE SECTION. Quando da execução do comando INSPECT o campo receptor não é inicializado, assim sendo o Desenvolvedor deverá zerá-lo antes de cada comando INSPECT.




Formato 2

O formato 2 substituirá ocorrências especificadas de um determinado caracter por outro. Ela não contará o número de ocorrências de qualquer caracter.

Formato 2 do comando INSPECT



Segundo exemplo
  INSPECT DATA-HOJE REPLACING ALL '-' BY '/'

  INSPECT NUMERO-1 REPLACING ALL SPACES BY '-'

  INSPECT NUMERO-2 REPLACING LEADING '4' BY '5'

  INSPECT NUMERO-3 REPLACING CHARACTERS BY '3'
                   BEFORE INITIAL '2'

  INSPECT NUMERO-4 REPLACING FIRST 'X' BY 'Y'


Resultado
Campo Antes Depois

DATA-HOJE 06-03-1951 06/03/1951

NUMERO-1 44 21 11 44-21-11

NUMERO-2 442111 552111

NUMERO-3 112111 332111

NUMERO-4 ABCXYZ ABCYYZ




Formato 3

O formato 3 poderá ser usado para converter letras maiúsculas em minúsculas.

Formato 3 do comando INSPECT





Outros exemplos:
  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


Outros exemplos:
  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"


Resultado:
Valor inicial COUNT-0 COUNT-1 COUNT-2 COUNT-3 COUNT-4 Valor final

EFABDBCGABEFGG 3 1 1 0 5 TUXYXVWRXYZZPZ

BABABC 2 0 0 1 1 SXYXYZ

BBBC 0 1 0 2 0 SSVW




Comando:
  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"


Comando:
  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"


Resultado:
Valor inicial COUNT-0 COUNT-1 COUNT-2 Valor final

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




Comando:
  INSPECT ITEM TALLYING
                    COUNT-0 FOR ALL "AB" AFTER "BA" BEFORE "BC"


Comando:
  INSPECT ITEM REPLACING
                    ALL "AB" BY "XY" AFTER "BA" BEFORE "BC"


Resultado:
Valor inicial COUNT-0 Valor final

ABABABABC 1 ABABXYABC




Comando:
  INSPECT ITEM CONVERTING
                    "ABCD" TO "XYZX" AFTER QUOTE BEFORE "#"


Comando:
  INSPECT ITEM CONVERTING
                    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 "#"


Resultado:
Valor inicial Valor final

AC"AEBDFBCD#AB"D AC"XEYXFYZX#AB"D




Comando:
  INSPECT ITEM CONVERTING "ABCDEFGHIJKLMNOPQRSTUVWXYZ"-
                    "abcdefghijklmnopqrstuvwxyz"
                    TO ALL "?"


Resultado:
Valor inicial Valor final

415-245-1212 415-245-1212

415-CH5-1212 415-??5-1212

20%Numeric 20%???????




Volta para o início da página

Volta a página anterior

Volta ao Menu Principal