home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / 1987 / 02 / suchstr.cob < prev    next >
Encoding:
Text File  |  1979-12-31  |  2.1 KB  |  56 lines

  1. *****************************************************************************
  2. **  Unterprogramm: SUCHSTR                                                 **
  3. **  Funktion: In einer Zeile wird ein String gesucht                       **
  4. **                                                                         **
  5. **  Zu uebergebende Parameter:                                             **
  6. **  1) Zeile, in der nach dem String gesucht werden soll                   **
  7. **  2) Zu suchender String                                                 **
  8. **  3) Laenge des Suchbegriffes                                            **
  9. **  4) Kz-Find ("J" oder "N", je nach Suchergebnis)                        **
  10. *****************************************************************************
  11.  IDENTIFICATION DIVISION.
  12.  PROGRAM-ID. SUCHSTR.
  13.  AUTHOR. Staack.
  14.  DATE-WRITTEN. 09/09/85.
  15.  ENVIRONMENT DIVISION.
  16.  CONFIGURATION SECTION.
  17.  SOURCE-COMPUTER. IBM-PC.
  18.  OBJECT-COMPUTER. IBM-PC.
  19.  DATA DIVISION.
  20.  WORKING-STORAGE SECTION.
  21.  77  I1           PIC  S999 COMP-3.
  22.  77  I2           PIC  S999 COMP-3.
  23.  77  I3           PIC  S999 COMP-3.
  24.  LINKAGE SECTION.
  25.  01  Zeile.
  26.      02   Ze-occ OCCURS  80 TIMES PIC x.
  27.  01  Such-String.
  28.      02   SS-occ OCCURS  80 TIMES PIC x.
  29.  77  Laenge                       PIC S999 COMP-3.
  30.  77  KZ-Find                      PIX x.
  31.  PROCEDURE DIVISION USING Zeile, Such-String, Laenge, KZ-Find.
  32.          MOVE "N" TO KZ-Find
  33.          PERFORM Such-Zeile THRU Such-Zeile-End
  34.           VARYING I1 FROM 1 BY 1 UNTIL I1 + Laenge > 80.
  35.  Raus.
  36.          EXIT PROGRAM.
  37. ********************  Suchen des Strings in der Zeile  **********************
  38.  Such-Zeile.
  39.          IF Ze-occ (I1) = SS-occ (1)
  40.             GO TO Suchz-01.
  41.  Such-Zeile-End.
  42.          EXIT.
  43.  Suchz-01.
  44.          MOVE 1 TO I2.
  45.          MOVE I1 TO I3.
  46.  Suchz-02.
  47.          ADD 1 TO I2, I3
  48.          IF I2 > Laenge
  49.              GO TO Gefunden.
  50.          IF Ze-occ (I3) = SS-occ (I2)
  51.              GO TO Suchz-02.
  52.          GO TO Such-Zeile-End.
  53.  Gefunden.
  54.          MOVE "J" TO KZ-Find
  55.          GO TO Raus.
  56.