Número de caracteres.
Para el manejo de los datos alfanuméricos o cadenas de texto, OOo Basic dispone de un conjunto de funciones incorporadas en el lenguaje (Built-In en inglés). Dedico esta entrada a presentarlas. En esta entrada y en las que siguen explicaré las que considero más importantes.
Las funciones Built-In dan respuesta a diferentes objetivos como son conocer la longitud de la cadena, convertir sus caracteres a mayúsculas o minúsculas, insertar o eliminar espacios en blanco, extraer partes de la cadena o conocer si consta o no de determinados caracteres. La utilidad de estas funciones puede parecer anecdótica hasta que se necesitan, bien para uso individual o puntual, bien para combinarlas unas con otras.
En esta entrada explicaré dos funciones que tienen que ver con los caracteres que componen una cadena: las funciones String() y Len(). La primera permite crear una cadena formada por un carácter repetido n-veces y la segunda conocer el número de caracteres que componen una cadena dada.
La función String() requiere el paso de dos parámetros: el primero, el número de repeticiones del carácter (Integer) y el segundo, el carácter a repetir (String). Su sintaxis es la siguiente: String(7,"m") y su expresión en la práctica (por ejemplo) como sigue: sCad1 = String(7,"m") devuelve mmmmmmm.
Aunque la utilidad de String() pueda resultar dudosa, la de la función Len(), por el contrario, está fuera de toda duda: conocer el número de caracteres de una cadena de texto resulta de gran utilidad en muchos algoritmos, aunque ahora no me detendré en demostrarlo. Por el momento es suficiente con conocer la sintaxis y el modo de uso de esta función (1).
La función Len(), precisa de un único parámetro, la cadena a analizar, por lo que su sintaxis es muy simple: Len(sCad1), que devuelve un valor numérico que computa todo lo que forma parte de la cadena, incluyendo (en su caso) los espacios que separan las palabras. Así, dada la cadena sCad1 = "Nombre del alumno" la función Len(sCad1) devuelve 17, mientras que para sCad1 = NombreDelAlumno", devuelve 15; la diferencia está en los dos espacios en blanco que separan las palabras. Lo mismo ocurre si hay espacios en blanco al inicio o al final de la cadena, que también serán contabilizados por Len() como parte de la misma.
No obstante, el tratamiento de estos espacios requiere, por su posible origen, un tratamiento complementario al mero recuento; pero esta cuestión será tratada en la [siguiente entrada].
NOTA.
(1) Lo mismo vale para el resto de estas funciones Built-In, aunque puede que en al algún caso ejemplifique su uso. Insisto, no obstante, en la utilidad de Len(), dado que es básica para procesar las cadenas de texto y forma parte de estructuras de código más complejas. Personalmente, al menos por el momento, no he encontrado que String() tenga el mismo nivel de utilidad.