Meisterung der String-Verkettung in COBOL
In der Welt der Programmierung ist der Umgang mit Strings eine häufige Aufgabe. In COBOL könnte man oft mit der Herausforderung konfrontiert werden, Strings zu verketten, deren Längen nicht vorherbestimmt sind. Dieser Artikel hat zum Ziel, eine klare Lösung für die Frage zu bieten, wie man zwei Strings unbekannter Länge in COBOL effektiv verketten kann.
Das Problem
Stellen Sie sich vor, Sie arbeiten mit einem Programm, das den Vornamen und Nachnamen eines Benutzers verarbeitet. Ihr WORKING-STORAGE
-Abschnitt definiert Variablen zur Speicherung dieser Namen, aber die Herausforderung entsteht, wenn Sie diese zu einem vollständigen Namen verketten müssen, ohne unnötige Leerzeichen zu behalten. Angenommen, Sie haben:
WORKING-STORAGE.
FIRST-NAME PIC X(15) VALUE SPACES.
LAST-NAME PIC X(15) VALUE SPACES.
FULL-NAME PIC X(31) VALUE SPACES.
Angenommen, FIRST-NAME
ist auf 'JOHN '
gesetzt und LAST-NAME
auf 'DOE '
, dann möchten Sie folgendes Ergebnis erzielen:
FULL-NAME = 'JOHN DOE '.
Ein naive Verkettung könnte jedoch dazu führen, dass Sie folgendes erhalten:
FULL-NAME = 'JOHN DOE '.
Dies ist nicht das gewünschte Ergebnis, da es zusätzliche Leerzeichen zwischen den verketten Teilen enthält. Wie lösen Sie also dieses Problem?
Die Lösung
Die Lösung für dieses Problem besteht darin, die STRING
-Anweisung von COBOL effektiv zu nutzen. Sie ermöglicht es Ihnen, Strings zu verketten und Trennzeichen anzugeben, um unerwünschte Leerzeichen zu beseitigen. Im Folgenden finden Sie die Schritte zur richtigen Verkettung der beiden Strings.
Schritt-für-Schritt-Anleitung
-
Definieren Sie die Strings: Stellen Sie sicher, dass Sie
FIRST-NAME
,LAST-NAME
undFULL-NAME
in IhremWORKING-STORAGE
-Abschnitt wie oben dargestellt definiert haben. -
Verwenden Sie die STRING-Anweisung: Sie können die
STRING
-Anweisung verwenden, um die Strings zu verketten. So geht’s:STRING FIRST-NAME DELIMITED BY " ", " ", LAST-NAME DELIMITED BY SIZE INTO FULL-NAME.
Aufschlüsselung der STRING-Anweisung
-
FIRST-NAME DELIMITED BY " “: Dies sagt COBOL, dass es
FIRST-NAME
verwenden und die Verkettung beim ersten Leerzeichen stoppen soll, wodurch am Ende stehende Leerzeichen effektiv entfernt werden. -
” “: Dies fügt ein einzelnes Leerzeichen zwischen den Vor- und Nachnamen hinzu, um sicherzustellen, dass sie korrekt getrennt sind.
-
LAST-NAME DELIMITED BY SIZE: Dies legt fest, dass die gesamte Länge des
LAST-NAME
in die Verkettung einbezogen werden soll, wodurch unnötige nachfolgende Leerzeichen vermieden werden. -
INTO FULL-NAME: Dies weist an, dass der resultierende verkettete String in
FULL-NAME
gespeichert wird.
Fazit
Indem Sie diese Schritte befolgen, werden Sie in der Lage sein, Strings unbekannter Länge in COBOL effizient zu verketten und gleichzeitig eine saubere und formatierte Ausgabe zu gewährleisten. Durch die Nutzung der STRING
-Anweisung mit geeigneten Trennzeichen vereinfacht COBOL den Prozess der String-Verwaltung und macht es zu einem leistungsstarken Werkzeug für Ihre Programmierbedürfnisse.
Das nächste Mal, wenn Sie mit einer ähnlichen Herausforderung bei der Verkettung in COBOL konfrontiert werden, können Sie diese Methode mit Zuversicht anwenden, um Ihre gewünschten Ergebnisse zu erzielen!