En aquest tema, explorarem tècniques avançades per manipular cadenes en REXX. La manipulació de cadenes és una habilitat essencial per a qualsevol programador, ja que moltes aplicacions requereixen processar i transformar dades textuals. Aprendrem a utilitzar funcions avançades per treballar amb cadenes de manera eficient i efectiva.
Continguts
Funcions de Manipulació de Cadenes
REXX proporciona diverses funcions incorporades per manipular cadenes. A continuació, es mostren algunes de les més útils:
LENGTH
La funció LENGTH
retorna la longitud d'una cadena.
SUBSTR
La funció SUBSTR
extreu una subcadena d'una cadena donada.
POS
La funció POS
retorna la posició d'una subcadena dins d'una cadena.
LEFT i RIGHT
Les funcions LEFT
i RIGHT
extreuen una subcadena des de l'esquerra o la dreta de la cadena, respectivament.
cadena = "Hola, món!" esquerra = LEFT(cadena, 4) dreta = RIGHT(cadena, 4) SAY "Els primers 4 caràcters són:" esquerra SAY "Els últims 4 caràcters són:" dreta
Substitució i Reemplaçament
TRANSLATE
La funció TRANSLATE
es pot utilitzar per substituir caràcters dins d'una cadena.
cadena = "Hola, món!" nova_cadena = TRANSLATE(cadena, "aeiou", "AEIOU") SAY "La cadena amb vocals minúscules és:" nova_cadena
OVERLAY
La funció OVERLAY
reemplaça una part de la cadena amb una altra subcadena.
cadena = "Hola, món!" nova_cadena = OVERLAY("univers", cadena, 7) SAY "La cadena modificada és:" nova_cadena
Divisió i Unió de Cadenes
PARSE
La instrucció PARSE
és molt poderosa per dividir cadenes en parts.
cadena = "Hola, món! Com estàs?" PARSE VAR cadena salutacio "," resta SAY "Salutació:" salutacio SAY "Resta de la cadena:" resta
CONCATENACIÓ
La concatenació de cadenes es pot fer utilitzant l'operador ||
.
cadena1 = "Hola" cadena2 = "món" cadena_completa = cadena1 || ", " || cadena2 || "!" SAY cadena_completa
Exercicis Pràctics
Exercici 1: Invertir una Cadena
Escriu un programa que inverteixi una cadena donada.
cadena = "Hola, món!" cadena_invertida = "" DO i = LENGTH(cadena) TO 1 BY -1 cadena_invertida = cadena_invertida || SUBSTR(cadena, i, 1) END SAY "La cadena invertida és:" cadena_invertida
Exercici 2: Comptar Vocals
Escriu un programa que compti el nombre de vocals en una cadena.
cadena = "Hola, món!" vocals = "aeiouAEIOU" comptador = 0 DO i = 1 TO LENGTH(cadena) IF POS(SUBSTR(cadena, i, 1), vocals) > 0 THEN comptador = comptador + 1 END SAY "El nombre de vocals és:" comptador
Conclusió
En aquesta secció, hem après diverses tècniques avançades per manipular cadenes en REXX. Hem explorat funcions per extreure subcadenes, substituir caràcters, dividir cadenes i unir-les. També hem practicat amb exercicis per reforçar aquests conceptes. La manipulació de cadenes és una habilitat fonamental que ens permetrà crear programes més flexibles i poderosos. En el proper tema, explorarem tècniques de parsing per processar dades de manera més eficient.
Curs de Programació REXX
Mòdul 1: Introducció a REXX
- Què és REXX?
- Configuració de l'Entorn REXX
- Hola Món en REXX
- Sintaxi i Estructura Bàsica
- Variables i Tipus de Dades
Mòdul 2: Conceptes Bàsics de Programació
- Operadors i Expressions
- Estructures de Control: IF/THEN/ELSE
- Bucles: DO i LEAVE
- Entrada i Sortida
- Manipulació Bàsica de Cadenes
Mòdul 3: Programació Intermèdia en REXX
- Funcions i Subrutines
- Funcions Incorporades
- Gestió d'Errors
- Operacions d'Entrada/Sortida de Fitxers
- Treballant amb Arrays
Mòdul 4: Programació Avançada en REXX
- Manipulació Avançada de Cadenes
- Tècniques de Parsing
- Interfície amb Programes Externs
- Macros REXX
- Optimització del Rendiment