CADENAS DE CARACTERES.
-Una cadena es un conjunto de caracteres encerrados entre apóstrofes.
Si se quiere representar un apóstrofe dentro de una cadena se deber
representar por dos apóstrofes consecutivos.
-Una cadena se declara con la siguiente sintaxis:
-CHARACTER *Número Lista de variables.
-Aqu¡ número representa el número de caracteres de las variables de una
cadena. Un array que contiene caracteres se define con una sentencia
CHARACTER y declarada de dos modos distintos.
LAS CADENAS COMO ARGUMENTO DE SUBPROGRAMAS.
-Un Subprograma puede especificar una cadena de caracteres sin darle una
longitud espec¡fica y equivale a la longitud de una array con una
variable entera.
-Se puede definir en un Subprograma un array de n variables cada una con
su cadena de caracteres sin especificar la longitud de cadena en la
sentencia CHARACTER.
-La longitud de la cadena es siempre positiva nunca igual a cero, y
dicha longitud no se puede alterar aunque s¡ asignar cadenas cuya
longitud es diferente.
-Una cadena con longitud m s corta que la de la variable, rellena a
blancos por la derecha y si es m s larga la trunca.
ASIGNACION DE VALORES A LAS CADENAS.
-Se realiza con la sentencia de asignación y una constante de caracteres
us ndose una variable cadena para inicializar otra variable de cadena.
-Si los caracteres asignados no coinciden con la longitud se rellenan
a blancos y si es mayor que la longitud se trunca por la derecha.
COMPARACION DE CADENAS.
-Esta comparación se realiza car cter a car cter de izquierda a derecha
con las siguientes reglas:
-Si las cadenas tienen igual longitud y los caracteres son los
mismos, las cadenas son iguales.
-Si una cadena es m s corta que la otra se a¤aden blancos a la
derecha de la otra cadena, de modo que pueda proceder a la
evaluación como si las cadenas fueran iguales.
-Las reglas de ordenación t¡picas son las siguientes:
-Las letras mayúsculas est n ordenadas de A a Z.
-Los d¡gitos ordenados de 0 a 9.
-El car cter blanco es menor que cualquier letra o número.
SUBCADENAS.
-Es cualquier cadena que representa un subconjunto de la cadena original
y mantiene el orden original. Para especificar una subcadena de una
variable de car cter o un elemento de un array de car cter se usa:
-Nombrecadena ( Expresión1 : Expresión2 ).
-Expresión1 es la posición en nombrecadena del primer car cter de la
subcadena y expresión2 es la posición en nombrecadena del último
car cter de la subcadena.
-Expresión1 y expresión2 deben ser del tipo entero y cumplir:
-1<=Expresión1<=Expresión2<=Longitud de la cadena.
-Si se omite la expresión1 se toma por defecto uno. Si se omite la
expresión2 se toma el valor de la longitud de la cadena original,
siendo la subcadena:
-Expresión2-Expresión1+1.
CONCATENACION DE CADENAS.
-Consiste en combinar dos o m s cadenas de caracteres en una única
cadena, siendo el operador que realiza la concatencación o unión de
cadenas el siguiente:
-.
FUNCION LONGITUD. SENTENCIAS "LEN" Y "GETLEN"
-LEN determina la longitud de la cadena de caracteres argumento siendo
su sintaxis:
-LEN (Cadena de caracteres).
-Si la cadena de caracteres es una constante de car cter su longitud es
el número de caracteres. Si es una variable de cadena o elemento de
array la longitud es la definida en la declaración.
-Si cadena es una subcadena con el formato (Expresión1:Expresión2) su
longitud es la siguiente:
-Expresión2-Expresión1+1.
-GETLEN calcula la longitud de una cadena de caracteres excluyendo a los
caracteres en blanco siendo su formato:
-GETLEN (Cadena de caracteres).
FUNCIONES DE TRATAMIENTO DE CARACTERES. SENTENCIAS "CHAR" E "ICHAR".
-CHAR determina el car cter de la cadena que ocupa la posición relativa
en la secuencia de caracteres ASCII siendo su sintaxis:
-CHAR (Posición).
-El valor de posición debe estar entre 0 y 255 caracteres de la cadena.
-ICHAR es la Función inversa de CHAR. El argumento es un car cter y la
Función devuelve un entero que es la posición del car cter en la
secuencia ordenada de caracteres ASCII con el formato:
-ICHAR (Car cter).
FUNCION DE BUSQUEDA. SENTENCIA "INDEX".
-Esta Función localiza una subcadena dentro de otra. Devuelve un valor
entero que indica la posición inicial de la cadena de caracteres
destino dentro de la cadena original siendo su sintaxis:
-INDEX (Cadena fuente, Cadena destino).
-Si la cadena destino no existe el formato devuelve el valor cero.
OTRAS FUNCIONES.
-La Función LEN_TRIM devuelve la longitud de la cadena dada sin los
espacios en blanco siendo su sintaxis:
-LEN_TRIM (Cadena de caracteres).
-La Función SCAN busca una subcadena en una cadena dada y muestra la
primera posición en la que coinciden ambas cadenas, buscando car cter
a car cter, siendo su sintaxis:
-SCAN (Cadena1, Cadena2).
-La Función VERIFY devuelve un entero y verifica que una cadena est
inclu¡da en otra, devolviendo la posición del car cter que sea distinto
de los dem s y siendo su sintaxis:
-VERIFY (Cadena1, Cadena2).
-Otras Funciones que devuelven un valor lógico y que sirven para la
comparación son:
-LGE (Cadena1, Cadena2), verifica si cadena1 es mayor o igual que
cadena2.
-LGT (Cadena1, Cadena2), verifica si cadena1 es mayor que cadena2.
-LLE (Cadena1, Cadena2), verifica si cadena1 es menor o igual que
cadena2.
-LLT (Cadena1, Cadena2), verifica si cadena1 es menor que cadena2.
-En estas cuatro últimas Funciones el argumento debe ser siempre un
car cter.