Existen varias funciones útiles para el manejo de cadenas de caracteres (Strings). Estas funciones
se utilizan para la evaluación, manipulación o conversión de cadenas de caracteres.
Utilidad Función en Comentarios
Visual Basic 6.0
Número de caracteres de una cadena Len(string | varname)
Conversión a minúsculas o a mayúsculas LCase(x), UCase(x)
Conversión de cadenas a números y de Str(n), CStr(n),
números a cadenas Val(string)
Extracción de un nº de caracteres en un Mid(string, ini[, n]), el parámetro n de Mid es opcional e
rango, de la parte derecha o izquierda de Right(string, length), indica el número de caracteres a
una cadena Left(string, length) extraer a partir de "ini"
Extracción de sub-cadenas Split(string, [[delim], n]) devuelve un array con las n (-1 para
todas) subcadenas separadas por
delim (por defecto, el espacio)
Unión de sub-cadenas Join(string, [delim])
Comparación de cadenas de caracteres strComp(str1, str2) devuelve -1, 0, 1 según str1 sea
menor, igual o mayor que str2
Hallar si una cadena es parte de otra InStr([n], str1, str2) devuelve la posición de str2 en str1
(está contenida como sub-cadena) buscando a partir del carácter n
Hallar una cadena en otra a partir del InstrRev(str1, str2, [n]) devuelve la posición de str2 en str1
final (reverse order) buscando a partir del carácter n
Buscar y reemplazar una subcadena por Replace(string, substring, reemplaza substring por
otra en una cadena replacewith) replacewith
Es necesario tener presente que cuando se quieren comparar dos cadenas de caracteres,
comparación se realiza por defecto en función del código ASCII asociado a cada letra (ver A
8.1). Esto significa que por ejemplo caña es posterior a casa debido a que la letra ñ tiene un c
ASCII asociado superior a la letra s (ñ es el 164; s es el 115). Esto mismo ocurre con las vo
acentuadas. Si se desea conseguir una comparación alfabética lógica es necesario incl
comienzo del fichero de código la sentencia Option Compare Text (frente a Option Com
Binary establecida por defecto). La función strComp() admite un tercer argumento que pe
especificar el tipo de comparación (constantes vbBinaryCompare o vbTextCompare).
Ejemplos:
MyDouble = 437.324 ' MyDouble es un Double.
MyString = CStr(MyDouble) ' MyString contiene "437.324".
MyValue = Val("2457") ' Devuelve 2457.
MyValue = Val(" 2 45 7") ' Devuelve 2457.
MyValue = Val("24 and 57") ' Devuelve 24.
AnyString = "Hello World" ' Se define el string.
MyStr = Right(AnyString, 6) ' Devuelve " World".
MyStr = Left(AnyString, 7) ' Devuelve "Hello W".
MyStr = Right(AnyString, 20) ' Devuelve "Hello World".
i = StrComp("casa", "caña") ' Devuelve –1 por defecto y 1 con Option
Compare Text
MyString = "Mid Function Demo" ' Se crea un nuevo string.
LastWord = Mid(MyString, 14, 4) ' Devuelve "Demo".
MidWords = Mid(MyString, 5) ' Devuelve "Function Demo".
El operador Like permite comparar dos cadenas de caracteres. Si son iguales devuelve True
y si no lo son, False. Téngase en cuenta que Like es un operador, no una función.
Existe además el operador de concatenación & que puede ser utilizado con cadenas de
caracteres. Se utiliza para poner una cadena a continuación de otra. Por ejemplo:
str1 = "My first string" 'Se inicializan los strings
str2 = "My second string"
TextoFinal = str1 & str2 'TextoFinal vale "My first stringMy second string"
El operador "+" opera de forma análoga, pero su uso se desaconseja pues en ciertas
ocasiones convierte las cadenas en números y realiza la suma.
Para obtener más información sobre cada una de las funciones buscar Strings en el Help de
Visual Basic 6.0.