domingo, 26 de octubre de 2008

Funciónes Join, Split y Filter en visual basic 6.0



Visual basic en su sexta versión incorpora estas 3 funciones para trabajar solo con vectores. Estas funciones están relacionadas con el tratamiento de las cadenas de caracteres.

Función Join

Esta función se utiliza para unir en una sola variable el conjunto de subcadenas de un vector. Esta función tiene solo 2 parámetros y es muy fácil de usar. Ejemplo:

Dim micadena as string
Dim vector(1 To 3) As String

vector(1) = "Carlos"
vector(2) = "Pedro"
vector(3) = "Juan"


Ahora ejecutando Join, la variable micadena pasaría a valer "Carlos-Pedro-Juan"

micadena = join (vector, "-")

Nota: En el primer parámetro de la función debemos indicar el vector en el cual trabajar, y en el segundo se debe indicar un delimitador de caracter para separar las cadenas. Si no especificamos ninguno, visual basic utilizará por defecto un espacio vacío o en blanco (" ") para separar cada subcadena .

Función Split:

Esta función hace el trabajo inverso de la función Join.

Split se utiliza para rellenar un vector dinámico que contiene un número de subcadenas a partir de una cadena que le pasamos como parámetro a la función.

Para aclarar un poco un ejemplo

Private Sub Form_Load()

'Una variable para almacenar una cadena
Dim Micadena As String 'Vector dinámico
Dim Vector() As String

'Le damos un valor a la variable
Micadena = "maria/natalia/romina"

'Ejecutamos la función Split
Vector = Split(Micadena, "/")

'Ahora el vector dinámico pasaría a _
contener los siguientes valores:

Vector(0) = "maría"
Vector(1) = "natalia"
Vector(2) = "Romina"

End Sub


Nota: una cosa importante es que en el vector anterior no se ha declarado un rango , ya que la función devuelve un vector cuya cantidad de elementos se ignora, es decir no se conoce.

Enlaces relacionados a split
Pasar un archivo de texto a un array o matriz usando split

Función Filter :

La función Filter se utiliza para filtrar subcadenas de un vector dependiendo de un determinado criterio de búsqueda. Los parámetros que lleva la función son los siguientes:

Filter (vector donde buscar, cadena a buscar, valor booleano que indica si incluir o excluir la cadena)

Ejemplo:

' Vector
Dim Alumnos(1 To 4) As String

' Vector dinámico para almacenar el resultado
Dim Resultado() As String

Alumnos(1) = "Luciano"
Alumnos(2) = "Lucas"
Alumnos(3) = "juan"
Alumnos(4) = "Natalia"

' Ejecutamos Filter

Resultado = Filter(Alumnos, "Lu", True)

' Ahora el vector dinámico "resultado" pasa a contener

MsgBox Resultado(0), vbInformation ' Luciano
MsgBox Resultado(1), vbInformation ' Lucas

No hay comentarios: