STRING ... DELIMITED en COBOL
STRING empalma campos en una sola etiqueta de amarre, recortando cada uno por su delimitador.
IDENTIFICATION DIVISION.
PROGRAM-ID. STRING-DELIMITED.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 PORT-NAME PIC X(10) VALUE "Valparaiso".
01 BERTH-NO PIC X(2) VALUE "9".
01 MOORING-TAG PIC X(30).
PROCEDURE DIVISION.
*> STRING splices fields; DELIMITED BY trims or keeps them whole.
STRING PORT-NAME DELIMITED BY SPACE
" berth " DELIMITED BY SIZE
BERTH-NO DELIMITED BY SPACE
INTO MOORING-TAG
END-STRING
DISPLAY "Tag: [" MOORING-TAG "]"
STOP RUN.
Cómo funciona
DELIMITED BY SPACEdeja de copiar un campo en su primer blanco.DELIMITED BY SIZEconserva el literal" berth "entero, espacios incluidos.INTO MOORING-TAGrecibe el empalme, yEND-STRINGcierra el verbo.
Palabras clave y builtins usados aquí
DATADISPLAYDIVISIONIDENTIFICATIONPROCEDURESECTIONSTOPSTRING
El intento, en números
- Líneas
- 16
- Caracteres a escribir
- 456
- Tokens
- 56
- Ritmo de tres estrellas
- 35 tpm
Al ritmo de tres estrellas de 35 tokens por minuto, este intento toma unos 96 segundos.
Paso 2 de 3 en Tablas y cadenas; paso 20 de 27 en Fundamentos del lenguaje.