En este tema, aprenderemos cómo manipular cadenas de texto en el Lenguaje de Control (CL). La manipulación de cadenas es una habilidad esencial para cualquier programador, ya que permite trabajar con datos textuales de manera eficiente. Veremos cómo definir, concatenar, extraer y modificar cadenas de texto utilizando comandos y funciones de CL.
Contenidos
Definición de Cadenas
En CL, las cadenas de texto se definen utilizando variables de tipo CHAR o VARCHAR. Aquí hay un ejemplo de cómo definir una cadena:
DCL
: Declara una variable.VAR(&MI_CADENA)
: Nombre de la variable.TYPE(*CHAR)
: Tipo de la variable (cadena de caracteres).LEN(50)
: Longitud de la cadena.CHGVAR
: Cambia el valor de una variable.VALUE('Hola, Mundo!')
: Valor asignado a la variable.
Concatenación de Cadenas
La concatenación de cadenas se realiza utilizando el operador ||
. Aquí hay un ejemplo:
DCL VAR(&CADENA1) TYPE(*CHAR) LEN(25) DCL VAR(&CADENA2) TYPE(*CHAR) LEN(25) DCL VAR(&RESULTADO) TYPE(*CHAR) LEN(50) CHGVAR VAR(&CADENA1) VALUE('Hola, ') CHGVAR VAR(&CADENA2) VALUE('Mundo!') CHGVAR VAR(&RESULTADO) VALUE(&CADENA1 || &CADENA2)
En este ejemplo, &RESULTADO
contendrá la cadena Hola, Mundo!
.
Extracción de Subcadenas
Para extraer subcadenas, utilizamos la función %SST
. Aquí hay un ejemplo:
DCL VAR(&CADENA) TYPE(*CHAR) LEN(50) DCL VAR(&SUBCADENA) TYPE(*CHAR) LEN(5) CHGVAR VAR(&CADENA) VALUE('Hola, Mundo!') CHGVAR VAR(&SUBCADENA) VALUE(%SST(&CADENA 1 5))
%SST(&CADENA 1 5)
: Extrae una subcadena de&CADENA
comenzando en la posición 1 y con una longitud de 5 caracteres. En este caso,&SUBCADENA
contendráHola,
.
Modificación de Cadenas
Podemos modificar cadenas utilizando varias funciones. Aquí hay algunos ejemplos:
Reemplazo de Subcadenas
Para reemplazar una subcadena, utilizamos la función %REPLACE
:
DCL VAR(&CADENA) TYPE(*CHAR) LEN(50) DCL VAR(&NUEVA_CADENA) TYPE(*CHAR) LEN(50) CHGVAR VAR(&CADENA) VALUE('Hola, Mundo!') CHGVAR VAR(&NUEVA_CADENA) VALUE(%REPLACE('Amigo' &CADENA 7 5))
%REPLACE('Amigo' &CADENA 7 5)
: Reemplaza 5 caracteres en&CADENA
comenzando en la posición 7 con la cadenaAmigo
.&NUEVA_CADENA
contendráHola, Amigo!
.
Conversión a Mayúsculas/Minúsculas
Para convertir una cadena a mayúsculas o minúsculas, utilizamos las funciones %UPPER
y %LOWER
:
DCL VAR(&CADENA) TYPE(*CHAR) LEN(50) DCL VAR(&MAYUSCULAS) TYPE(*CHAR) LEN(50) DCL VAR(&MINUSCULAS) TYPE(*CHAR) LEN(50) CHGVAR VAR(&CADENA) VALUE('Hola, Mundo!') CHGVAR VAR(&MAYUSCULAS) VALUE(%UPPER(&CADENA)) CHGVAR VAR(&MINUSCULAS) VALUE(%LOWER(&CADENA))
%UPPER(&CADENA)
: Convierte&CADENA
a mayúsculas.%LOWER(&CADENA)
: Convierte&CADENA
a minúsculas.
Ejercicios Prácticos
Ejercicio 1: Concatenación de Cadenas
Instrucciones:
- Declara dos variables de tipo CHAR con una longitud de 20.
- Asigna valores a ambas variables.
- Concatenar las dos cadenas y almacenar el resultado en una tercera variable.
Solución:
DCL VAR(&CADENA1) TYPE(*CHAR) LEN(20) DCL VAR(&CADENA2) TYPE(*CHAR) LEN(20) DCL VAR(&RESULTADO) TYPE(*CHAR) LEN(40) CHGVAR VAR(&CADENA1) VALUE('Hola, ') CHGVAR VAR(&CADENA2) VALUE('Mundo!') CHGVAR VAR(&RESULTADO) VALUE(&CADENA1 || &CADENA2)
Ejercicio 2: Extracción de Subcadenas
Instrucciones:
- Declara una variable de tipo CHAR con una longitud de 30.
- Asigna un valor a la variable.
- Extrae una subcadena de 5 caracteres comenzando en la posición 8.
Solución:
DCL VAR(&CADENA) TYPE(*CHAR) LEN(30) DCL VAR(&SUBCADENA) TYPE(*CHAR) LEN(5) CHGVAR VAR(&CADENA) VALUE('Bienvenidos al curso de CL') CHGVAR VAR(&SUBCADENA) VALUE(%SST(&CADENA 8 5))
Ejercicio 3: Reemplazo de Subcadenas
Instrucciones:
- Declara una variable de tipo CHAR con una longitud de 50.
- Asigna un valor a la variable.
- Reemplaza una subcadena de 6 caracteres comenzando en la posición 12 con la cadena
CL
.
Solución:
DCL VAR(&CADENA) TYPE(*CHAR) LEN(50) DCL VAR(&NUEVA_CADENA) TYPE(*CHAR) LEN(50) CHGVAR VAR(&CADENA) VALUE('Bienvenidos al curso de Python') CHGVAR VAR(&NUEVA_CADENA) VALUE(%REPLACE('CL' &CADENA 12 6))
Conclusión
En esta sección, hemos aprendido cómo manipular cadenas de texto en CL. Hemos cubierto la definición de cadenas, concatenación, extracción de subcadenas y modificación de cadenas. Estos conceptos son fundamentales para trabajar con datos textuales en CL y te prepararán para tareas más avanzadas en programación.
Asegúrate de practicar los ejercicios proporcionados para reforzar tu comprensión y estar listo para el siguiente módulo, donde exploraremos las estructuras de control en CL.
Curso de CL (Lenguaje de Control)
Módulo 1: Introducción a CL
- ¿Qué es el Lenguaje de Control?
- Configuración de tu Entorno
- Sintaxis y Estructura Básica
- Escribiendo tu Primer Programa CL
Módulo 2: Comandos Básicos de CL
- Introducción a los Comandos de CL
- Comandos de Gestión de Archivos
- Comandos de Gestión de Trabajos
- Comandos de Gestión del Sistema
Módulo 3: Variables y Expresiones
- Entendiendo las Variables
- Definiendo y Usando Variables
- Expresiones y Operadores
- Manipulación de Cadenas
Módulo 4: Estructuras de Control
Módulo 5: Comandos Avanzados de CL
- Operaciones Avanzadas de Archivos
- Programación Avanzada de Trabajos
- Comandos de Configuración del Sistema
- Seguridad y Permisos