Duda con "Split"

Iniciado por HJZR4, 31 Octubre 2007, 11:12 AM

0 Miembros y 1 Visitante están viendo este tema.

HJZR4

Pos mi problema es el siguiente: Estoy separando una cadena por el caracter "_" y la cadena es la siguiente:
    "Hola_HJZR4_Quetal_bien"
Cómo puedo contar las separaciones que hay? En el caso de que no supiese cual es la cadena...

Si no se entiende, decidlo y me intento explicar mejor ^^

Muchas gracias. :p

Para aprender solo hay una solución:
LeeR y Preguntar

Tughack

Poenete a leer la documentacion y no hagas perguntas tontas.

Spider-Net

Recorre la cadena caracter a caracter y cuando encuentres un "_" suma uno a un contador, ejemplo:

Código (vb) [Seleccionar]
Dim x As Integer
Dim cadena As String

Public Function Contador()
Dim i As Integer
Dim c As String
x = 0
cadena = "Hola_HJZR4_Quetal_bien"
For i = 1 To Len(cadena)
    c = Mid(cadena, i, 1)
    If c = "_" Then
        x = x + 1
    End If
Next i
End Function



Ahora solo tienes que hacer un for que haga el split desde 0 hasta x-1 y ya está ;)

Tughack tan simpático como siempre... ^^

Saludos.

HJZR4

Tughack, si, puede que lleves razón. Pero tu crees que es necesario esa manera de decirlo? -.-
Para aprender solo hay una solución:
LeeR y Preguntar

Hans el Topo

#4
MSDN LIBRARY
Split(expresión[, delimitador[, cuenta[, comparación]]])

La sintaxis de la función Split tiene las siguientes partes:

Parte Descripción
expresión
Requerido. Expresión de cadena que contiene las subcadenas y delimitadores. Si expresión es una cadena de longitud cero, Split devuelve una matriz vacía, es decir, una matriz sin elementos ni datos.
delimitador
Opcional. Carácter de cadena que se usa para identificar los límites de las subcadenas. Si se omite, se asume que el carácter delimitador es el carácter de espacio (" "). Si delimitador es una cadena de longitud cero, se devuelve una matriz de un solo elemento que contiene toda la expresión.
cuenta
Opcional. número de subcadenas que se va a devolver; -1 indica que se devuelven todas las subcadenas.
comparación
Opcional. Valor numérico que indica el tipo de comparación que se va a usar al evaluar las subcadenas. Consulte la sección Valores para saber cuáles son los valores permitidos.


Valores
El argumento comparación puede tener los siguientes valores:
Constante Valor Descripción
vbBinaryCompare 0 Realiza una comparación binaria.
vbTextCompare 1 Realiza una comparación de texto.


Comentarios
El siguiente ejemplo usa la función Split para devolver una matriz a partir de una cadena. La función realiza una comparación de texto del delimitador y devuelve todas las subcadenas.
Dim MiCadena, MiMatriz
MiCadena = Split("VBScriptXisXfun!", "x", -1, 1)
' MiCadena(0) contiene "VBScript".
' MiCadena(1) contiene "es".
' MiCadena(2) contiene "divertido".

 

Lambda

MsgBox UBound(Split("Hola_Test1_test2_test3", "_"))

Resultado: 3

elmaro

CantidadRegistros = Ubound(Split("Hola_Que_Tal_?", "_"))
Text1.text = CantidadRegistros


algo muy parecido a lo anterior
un ejemplo de mas no viene mal ;)