Category:Amazing Hopper: Difference between revisions
m
→INSTRUCCIONES DE TRATAMIENTO DE CADENAS
Line 1,464:
Si en la instrucción de alto nivel existe un "*", significa que el orden de los argumentos es afectado por POSTFIX.
-----------------------------------------------------------------------------------
{A}len Obtiene el tamaño de la cadena A len(A)
{A}asc Obtiene el valor ASCII de A asc(A)
{A}chr Obtiene el caracter del valor ASCII chr(A)
identificado por A.
{B,C}countat Cuenta el número de ocurrencias de countat(B,C)
B en C.
C puede ser un array.
{A,B,C}countat Cuenta el número de ocurrencias de countat(A,B,C)
B en C, omitiendo A caracteres.
C puede ser un array.
{B,C}findat Obtiene la posición de la última findat(B,C)
ocurrencia de B en C.
{A,B,C}findat Obtiene la posición de la A findat(A,B,C)
ocurrencia de B en C.
C puede ser un array.
{
C puede ser un array.
multipasson Activa el multipaso en la búsqueda multipasson
con FINDAT y COUNTAT.
multipassoff Desactiva multipaso. multipassoff
{A}trim Quita espacios laterales de A trim(A)
{A}trimright Quita espacios a la derecha de A trimright(A)
{A}trimleft Quita espacios a la izquierda de A trimleft(A)
{A,B,C}padcenter Centra la cadena C entre un espacio padcenter(A,B,C)
de B caracteres, rellenando con el
caracter A.
A y B pueden ser arrays, pero el largo
de B debe ser el número de columnas
de C.
{A,B,C}padright Ajusta la cadena C entre un espacio padright(A,B,C)
de B caracteres, rellenando con el
caracter A, hacia la derecha.
A y B pueden ser arrays, pero el largo
de B debe ser el número de columnas
de C.
{A,B,C}padleft Ajusta la cadena C entre un espacio padleft(A,B,C)
de B caracteres, rellenando con el
caracter A, hacia la izquierda.
A y B pueden ser arrays, pero el largo
de B debe ser el número de columnas
de C.
{A,B}replicate
{A}replyby(B) Replica la cadena A, B veces. replicate(A,B)
A puede ser un array.
{A,B}cat Concatena A y B. cat(A,B)
{A,B}cut Corta la cadena B desde la primera cut(A,B)
ocurrencia del caracter A, desde la
izquierda hacia la derecha.
A y B pueden ser arrays.
{A,B}rcut Corta la cadena B desde la última rcut(A,B)
ocurrencia del caracter A, desde la
derecha hacia la izquierda.
A y B pueden ser arrays.
{A,B,C},copy Obtiene una subcadena de C, de copy(A,B,C)
tamaño A, contando desde B.
C y B pueden ser arrays.
{
C,
{B,C,D,E}
ocurrencia B.
C, D y E pueden ser arrays.
{A,B,C,D,E}
C, D y E pueden ser arrays.
{A,B,C,D}
C y B pueden ser arrays.
posición B.
C y B pueden ser arrays.
{A,B}deletechar Borra en B los caracteres indicados deletechar(A,B)
en A. B debe ser un tipo simple.
{A,B}
caracter de A, en B.
B debe ser un tipo simple.
{A,B}
señalados en A.
{A,B,C}
{1," "," Hola mundo! "}poschar
{A,B,C}rleft Reemplaza cada caracter A con el
caracter B de C
Ejemplo:
{" ","."," mensaje "}rleft
{A,B,C}rright Reemplaza cada caracter A con el rright(A
{" ","."," mensaje "}rleft
==> mensaje...
{A,B,C}rall Reemplaza cada caracter A con el rall(A,B,C)
caracter B de C, a la derecha
Ejemplo:
{" ","."," mensaje "}rleft
==> ...mensaje...
{A}reverse Reversa una cadena. No acepta reverse(A)
arrays, solo tipo cadena simple.
countlines(A) Cuenta el total de líneas de la no existe
cadena A.
join(C) Concatena todos los elementos del no existe
stack, en la cadena C. Tipos distintos
a cadena, serán convertidos en el
proceso.
JOIN es sensible al separador de tokens
definido por TOKSEP.
JOIN no concatena elementos arrays.
{A,B,C}mask Enmascara la cadena C con el patrón mask(A,B,C)
B, rellenando los espacios remanentes
con el caracter A.
C puede ser un array.
Un caracter no nulo de C es representado
por el símbolo "#" dentro del patrón.
Ejemplo:
{"-","####.###-###","1ACW025"},mask
==> ---1.ACW-025
{A,B}money Convierte el número B a formato money(A,B)
moneda, con A decimales.
B puede ser un array.
Ejemplo:
{2,987678.356},money
==> 987,678.36
{A,B}saturate(C) Reemplaza cada campo en C, con no existe
cada token en A, separados por B.
Cada campo debe ser indizado,
iniciando en "0":
$0, $1, $n.
Ejemplo 1:
A = "Juanito Pérez,5.666.789-K,Calle 7 S/N,Lo Prado"
C = "Yo, $0, RUT nº $1,\nDirección particular $2, comuna $3"
{A,","}saturate(C), str to utf8,{"\n"}, print
imprime:
linea = "$0:25L$1:15L$2:20L$3:30R"
Campo: $n:M[LRC]
M = tamaño del campo a rellenar.
la derecha (R).
{A,B}saturate(C) Reemplaza cada campo en C, con
largo-posición, cuyos tamaños son
C
como también, largo-posición:
C = "$0:25L$1:15L$2:20L$3:30R"
OBSERVACION. La instrucción SATURATE está pensada para ser usada en combinación con lectura y escritura de archivos de texto, es decir, para transformación de datos.
|