Funciones de serie
Esta sección contiene breves descripciones de las funciones que se aplican a valores de tipo serie.
Función | Qué hace |
---|---|
convert | Convierte una serie en otro tipo de dato o convierte otro tipo de dato en una serie. |
decode | Convierte una expresión de serie codificada en la serie original. |
encode | Convierte una expresión de serie en una serie de texto sin sentido. |
hex | Traduce un literal de serie que contiene códigos de caracteres hexadecimales en una serie ASCII. |
in_set | Devuelve el valor booleano verdadero si una serie está compuesta completamente por caracteres de otra serie. |
is_number | Devuelve el valor booleano verdadero si una expresión de serie se evalúa como valor flotante o entero. |
is_time | Devuelve el valor booleano verdadero si una expresión de serie se evalúa como un valor de tiempo válido. |
len | Devuelve la longitud de una serie. |
Cambia los caracteres de una serie a minúscula o mayúscula. | |
Elimina espacios en blanco o caracteres determinados del principio (ltrim), del final (rtrim) o de ambos extremos (trim) de una serie. | |
max | Devuelve el mayor valor de una lista de expresiones de cualquier tipo de dato admitido. |
min | Devuelve el mayor valor de una lista de expresiones de cualquier tipo de dato admitido. |
numbertostring | Convierte una expresión flotante o entera en una expresión de serie, utilizando una máscara especificada. |
repeat | Crea una serie repitiendo otra serie un número determinado de veces. |
strins | Inserta una serie en otra serie en una ubicación determinada. |
strloc | Devuelve la posición inicial de una subserie dentro de una serie. Si no se encuentra la subserie, la función devuelve cero. |
stringtotime | Convierte una expresión de serie en una expresión de tiempo, utilizando una máscara especificada. |
substitute | Dentro de una serie, sustituye una subserie por otra. |
substr | Devuelve una subserie a partir de una posición inicial y una longitud determinadas. |
timetostring | Convierte una expresión de tiempo en una expresión de serie, utilizando una máscara especificada. |
translate | Sustituye caracteres en una serie. |
xmlencode | Convierte un campo XML en una expresión de serie. |
xmldecode | Convierte una expresión de serie en XML. |
hex
Esta función traduce un literal de serie de códigos de caracteres hexadecimales en una serie ASCII. La función hex puede expresar cualquier carácter, aunque generalmente se utiliza para caracteres que no tienen representaciones de ASCII, como pestañas.
hex (hex_codes)
donde
hex_codes es un literal de serie que contiene el código hex para un carácter o una serie de caracteres.hex ("616263")
translate
Esta función crea una nueva serie sustituyendo los caracteres de una serie por los caracteres que especifique. La función translate es útil para codificar caracteres.
translate (source_string, search_string,
replace_string)
donde:Parámetro | Descripción |
---|---|
source_string | La serie que contiene los caracteres que se van a sustituir. |
search_string | La serie de caracteres dentro de source_string que se va a sustituir. Debe tener la misma longitud que replace_string. |
replace_string | La serie de caracteres de sustitución. Debe tener la misma longitud que search_string. |
La búsqueda y sustitución se realiza en función del carácter. Si la serie de búsqueda es "abc" y la serie de sustitución es "def", la función traduce "a" como "d", "b" como "e" y "c" como "f"; en la serie que acaba de crear.
source_string contiene "*123-#44-!999"
search_string contiene "#*!-"
replace_string contiene "XYZ&"
la función da como salida la siguiente nueva serie:Y123&X44&Z999
Tenga en cuenta que el contenido de la serie original, la serie de búsqueda y la serie de sustitución no cambia.
translate (str, ".,", ",.")
lower, upper
lower (string_exp)
upper (string_exp)
donde string_exp es la expresión de serie que se va a convertir.in_set
Esta función compara dos series, devolviendo un valor booleano verdadero si todos los caracteres de la primera serie están contenidos en alguna parte de la segunda serie. Si la primera serie contiene al menos un carácter que no está contenido en la segunda serie, la función devuelve un valor de falso. Los caracteres tienen que aparecer en el mismo orden en las dos series; la segunda serie también puede contener caracteres adicionales.
in_set (subset_string, superset_string)
donde:Parámetro | Descripción |
---|---|
subset_string | La expresión de serie que contiene sólo los caracteres de la subserie. |
superset_string | La expresión de serie con la que se compara subset_string. |
in_set (name, "abcdefghijklmnopqrstuvwxyz")
la
función devuelve verdadero si name = "jim"
pero
falso si name = "Fido"
o name = "a.b"
len
len (string_expr)
donde
string_expr es una expresión de serie cuya longitud se va a calcular.len ("Hamilton Burger")
repeat
repeat (string_expr, repeat_num)
donde:Parámetro | Descripción |
---|---|
string_expr | La expresión de serie que se va a repetir. |
repeat_num | El número de veces que se repite string_exp. |
repeat ("abcd", 5)
strloc
Una subserie es una parte de una subserie de origen; su longitud puede ser menor o igual a la longitud de la serie de origen. Por ejemplo, Buenos, día, enos día y Buenos día son todo subseries de Buenos días.
Utilice la función strloc para descubrir dónde se encuentra una subserie particular dentro de una serie de origen. Esta función devuelve la posición inicial de la subserie en la serie de origen.
Si la subserie se puede encontrar en la serie de origen más de una vez, la función devuelve la posición inicial de su primera aparición. Si no se encuentra la subserie, o si la subserie es mayor que la serie de origen, la función devuelve cero.
strloc (source_string, sub_string)
donde:Parámetro | Descripción |
---|---|
source_string | La serie en la que se busca la subserie. |
sub_string | La serie que se busca. |
strloc ("Good Morning", "Morning")
substr
Esta función extrae una subserie de una serie de origen, creando así una nueva serie. Usted especifica la serie de origen y la posición del carácter donde empieza la extracción. Además, opcionalmente, puede especificar el número de caracteres que se van a extraer; si no ofrece esta información, la extracción se detiene al final de la serie de origen.
substr (source_string, start_pos {, length})
donde:Parámetro | Descripción |
---|---|
source_string | La serie de origen. |
start_pos | La posición del carácter donde empieza la extracción. |
length | El número de caracteres que se van a extraer (por ejemplo, la longitud de la serie extraída). |
substr ("Good Morning!", 6, 7)
Esta función también puede extraer series de longitud cero (series sin caracteres entre las comillas) en una posición de un carácter más que la longitud de una serie. Este uso es útil para los algoritmos que tienen series de longitud cero como una condición límite. Puede extraer caracteres desde las posiciones 1 hasta el último carácter la serie +1; por lo tanto, las posiciones 1 y la longitud de la serie +1 son condiciones límite.
Se produce un error en tiempo de ejecución si:
- Su posición inicial es menor que 1 o mayor que la longitud de la serie origen + 1.
- La longitud especificada produce una subserie que es mayor que los caracteres restantes de la serie de origen (es decir, start_pos + length > len (source_string) + 1).
strins
strins (source_string, insert_string, start_pos)
donde:Parámetro | Descripción |
---|---|
source_string | La serie que se combinará con insert_string para producir una nueva serie. |
insert_string | La serie que se combinará con source_string para producir una nueva serie. |
start_pos | La posición en la source_string en la que comienza la inserción; los valores van desde 1 hasta la longitud de la source_string + 1. Si especifica un valor menor que 1 o mayor que la source_string + 1, se produce un error en tiempo de ejecución. |
insert_str = "Mr. Jones,"
y
que source_str = "Good morning, what a lovely day."
strins (source_str, insert_str, 15)
Good morning, Mr. Jones, what a lovely day.
substitute
substitute (source_string, unwanted_string,
replacement_string)
donde:Parámetro | Descripción |
---|---|
source_string | La serie que contiene unwanted_string. |
unwanted_string | Una subserie de source_string. |
replacement_string | La serie que sustituirá a unwanted_string para crear una nueva serie. |
substitute (TestString, "abc", "wxyz")
TestString = "abcdabcd"
la
función devuelve la siguiente serie nueva:wxyzdwxyzd
Tenga en cuenta que el contenido de la serie de origen, la serie no deseada y la serie de sustitución no cambia.ltrim, rtrim y trim
Estas funciones crean una nueva serie copiando una serie de origen existente y eliminando los espacios en blanco o caracteres determinados del principio (ltrim), del final (rtrim) o de ambos extremos (trim) de una serie nueva. En todos los casos, la serie de origen permanece sin cambios.
ltrim (string_expr{, trim_char}opt)
rtrim (string_expr{, trim_char}opt)
trim (string_expr{, trim_char}opt)
donde:Parámetro | Descripción |
---|---|
string_expr | La expresión de la serie de origen que se va a copiar. |
trim_char | Un parámetro opcional que especifica los caracteres que se van a eliminar de la nueva serie. Si no especifica este parámetro, se eliminan los espacios en blanco. Dependiendo de la función, la eliminación se inicia por el principio, el final o ambos extremos de la nueva serie y continúa hasta que se encuentra un carácter no especificado en trim_char (o un carácter que no sea un espacio en blanco). |
LastName = "Smith"
y
la nueva serie devuelta es "Smith"
ltrim (LastName)
Status = "OpenXY&Z&&&&"
la
nueva serie devuelta es "OpenXY&Z"
rtrim (Status, "&")
rtrim (AccountName, "0123456789")
is_number
Esta función determina si la expresión de serie especificada se evalúa como valor flotante o entero. La función is_number devuelve el valor booleano verdadero si toda la serie (no sólo una subserie) se evalúa como flotante o entera, y falso en el caso contrario.
is_number (expr)
donde
expr es una expresión de serie.is_number ("123.4")
is_number ("no")
is_number ("abc63j")
is_time
Esta función determina si la expresión de serie especificada se evalúa como un valor de tiempo en un formato determinado. La función is_time devuelve el valor booleano verdadero si toda la serie (no sólo una subserie) se evalúa como valor de tiempo en el formato especificado; en caso contrario, la función devuelve un valor de falso.
is_time (str_expr, date_time_mask)
donde:Parámetro | Descripción |
---|---|
str_expr | Una expresión de serie. |
date_time_mask | Una máscara de fecha/hora que especifica el formato que debe utilizar str_expr para que is_time devuelva un valor verdadero. |
is_time ("nov121995", "mm/dd/yyyy")
is_time ("11/12/1995", "mm/dd/yyyy")
timetostring
timetostring (time_expr, date_time_mask)
donde:Parámetro | Descripción |
---|---|
time_expr | Una expresión de tipo tiempo. |
date_time_mask | Una máscara de fecha/hora que determina el formato de salida de la función timetostring. |
timetostring (systemtime(), "mm/dd/yyyy hh:tt:ss am")
7/1/1985 12:45:06 pm
Consulte la información sobre la función systemtime().
stringtotime
stringtotime (string_expr, date_time_mask)
donde:Parámetro | Descripción |
---|---|
string_expr | Una expresión de tipo serie. |
date_time_mask | Una máscara de fecha/hora que especifica el formato de hora que se utiliza para la conversión. |
stringtotime (HostTime, "mon. dd, yyyy hh:tt:ss am")
HostTime = "Jul. 1, 1985 12:45:06 pm"
la salida resultante es el valor de tiempo equivalente
a 1 de julio de 1985 6 tras las 12:45 p.m.encode, decode
Estas funciones convierten series en series sin sentido con el propósito de ocultar su contenido. Tanto la función encode como la función decode deben estar en el mismo flujo de trabajo.
encode (string_expr)
decode (string_expr)
donde:Parámetro | Descripción |
---|---|
string_expr | Una expresión de tipo serie. La serie no puede ser un literal. |