elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  Consulta interpretacion texto
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Consulta interpretacion texto  (Leído 3,617 veces)
Cromatico

Desconectado Desconectado

Mensajes: 110


Ver Perfil
Consulta interpretacion texto
« en: 4 Marzo 2011, 23:34 pm »

Hola que tal nuevamenteee :P:P
Queria consultar una cosita... Tengo un texto que es todo seguido, pero quiero dividirlo...
Como para poner un ejemplo, supongamos que son todos USUARIOS, usuario1, usuario2, usuario3...

El texto me lo devuelve una web php con "echo"...
Seria asi:
Código:
dato1|dato2|dato3|dato4|1 dato1|dato2|dato3|dato4|2 dato1|dato2|dato3|dato4|3

Como ven, son 4 datos y despues del 4to separador esta el identificador de cada usuario.

La cuestion es que no se me ocurre como identificar los 4 datos + el identificador de cada "usuario"...

Estaba pensando en contar los separadores y al llegar a 4, que haga un split y corte como si fuera un usuario... Pero tampoco se como hacerlo...
Va, se me ocurre readfield pero no se no me convence, hay alguna otra alternativa?

Gracias!!!


« Última modificación: 4 Marzo 2011, 23:38 pm por Cromatico » En línea

Edu


Desconectado Desconectado

Mensajes: 1.082


Ex XXX-ZERO-XXX


Ver Perfil
Re: Consulta interpretacion texto
« Respuesta #1 en: 4 Marzo 2011, 23:47 pm »

No se entiende bien lo q dices pero parece q usando split simplemente se puede pero veo q lo has intentado no se, explica mejor.


En línea

Cromatico

Desconectado Desconectado

Mensajes: 110


Ver Perfil
Re: Consulta interpretacion texto
« Respuesta #2 en: 5 Marzo 2011, 00:36 am »

mmm se me complica para explicarlo quizas xD

aver yo tengo este texto:
Código:
dato1|dato2|dato3|dato4|1 dato1|dato2|dato3|dato4|2 dato1|dato2|dato3|dato4|3

Se supone que son 3 usuarios que tienen 4 datos cada uno y al final el identificador...
dato1|dato2|dato3|dato4|1
dato1|dato2|dato3|dato4|2
dato1|dato2|dato3|dato4|3

Quiero separarlos osea:
Código:
dim Usuario() as string
Usuario(1) = dato1|dato2|dato3|dato4|1
Usuario(2) = dato1|dato2|dato3|dato4|2
Usuario(3) = dato1|dato2|dato3|dato4|3

No intente hacer split, lo usaria para luego de tener los datos de cada usuario, ahi si hacer un split y separar cada uno de los datos del usuario...

Pero teniendolo asi (original):
Código:
dato1|dato2|dato3|dato4|1 dato1|dato2|dato3|dato4|2 dato1|dato2|dato3|dato4|3

Como puedo separar cada usuario?
En línea

Edu


Desconectado Desconectado

Mensajes: 1.082


Ex XXX-ZERO-XXX


Ver Perfil
Re: Consulta interpretacion texto
« Respuesta #3 en: 5 Marzo 2011, 01:20 am »

Fa tienes razon, yo no se mucho pero tendria q saber como hacer un array de arrays q es lo q falta creo mira esto:

Código
  1. Dim Data As String
  2. Dim Usuario1() As String, Usuario2() As String
  3. Dim Usuario3() As String
  4.  
  5.  
  6. Data = "dato1|dato2|dato3|dato4|1 dato1|dato2|dato3|dato4|2 dato1|dato2|dato3|dato4|3"
  7.  
  8. Usuario1() = Split(Data, "|" & 1)
  9.  
  10. Usuario2() = Split(Usuario1(1), "|" & 2)
  11.  
  12. Usuario3() = Split(Usuario2(1), "|" & 3)
  13.  
  14. MsgBox Usuario1(0)
  15. MsgBox Usuario2(0)
  16. MsgBox Usuario3(0)
  17.  

Lo hice de esa forma por si sabes hacer lo de un array dentro de otro xD yo tendria q saberlo talvez son los vasos de mas q tengo xD me fui!!

En línea

raul338


Desconectado Desconectado

Mensajes: 2.633


La sonrisa es la mejor forma de afrontar las cosas


Ver Perfil WWW
Re: Consulta interpretacion texto
« Respuesta #4 en: 5 Marzo 2011, 01:37 am »

Hay otras formas, pero a mi me encanta las expresiones regulares :xD

Código
  1. Public Function GetData(ByVal strText As String) As Collection
  2. Dim cTemp                       As New Collection
  3. Dim oRegExp                     As Object
  4. Dim oMatch                      As Object
  5. Dim oMatches                    As Object
  6.  
  7.    Set oRegExp = CreateObject("VBScript.RegExp")
  8.  
  9.    With oRegExp
  10.        .Pattern = "[\w\d]+\|[\w\d]+\|[\w\d]+\|[\w\d]+\|(\d+)"
  11.        .Global = True
  12.        .IgnoreCase = True
  13.    End With
  14.  
  15.    Set oMatches = oRegExp.Execute(strText)
  16.  
  17.    For Each oMatch In oMatches
  18.        cTemp.Add oMatch.SubMatches(0)
  19.    Next
  20.  
  21.    Set GetData = cTemp
  22. End Function
  23.  
  24. Private Sub Form_Load()
  25. Dim vItem                       As Variant
  26. Const S                         As String = "dato1|dato2|dato3|dato4|1 dato1|dato2|dato3|dato4|2 dato1|dato2|dato3|dato4|3"
  27.    For Each vItem In GetData(S)
  28.        MsgBox vItem
  29.    Next
  30. End Sub
  31.  
« Última modificación: 5 Marzo 2011, 01:41 am por raul338 » En línea

Cromatico

Desconectado Desconectado

Mensajes: 110


Ver Perfil
Re: Consulta interpretacion texto
« Respuesta #5 en: 5 Marzo 2011, 02:37 am »

Mmmm raul tu funcion me devuelve el identificador de cada usuario verdad? Y como obtengo los datos de cada uno siendo asi?

Gracias a los 2!
En línea

Cromatico

Desconectado Desconectado

Mensajes: 110


Ver Perfil
Re: Consulta interpretacion texto
« Respuesta #6 en: 5 Marzo 2011, 02:57 am »

Perdon por el doble post, ya lo solucione, no sera la mejor manera, pero me funciona perfecto, aca les dejo como hice!
Código:
Private Sub Form_Load()
Dim i As Integer, l As Integer
Dim Data As String, X As String, Datos As String, Dats() As String
Dim Usuario(100) As String

Datos = "0 dato1|dato2|dato3|dato4|1 dato5|dato6|dato7|dato8|2 dato9|dato10|dato11|dato12|3 dato13|dato14|dato15|dato16|4 dato17|dato18|dato19|dato20|5"
X = Right(Data, 1) 'ultimo usuario (en este caso seria x = 5)

For i = 1 To X 'hacemos el recorrido del usuario 1 hasta x (ultimo usuario)
Datos = ReadField((i * 4) - 3, Data, Asc("|")) & ReadField((i * 4) - 2, Data, Asc("|")) & ReadField((i * 4) - 1, Data, Asc("|")) & ReadField(i * 4, Data, Asc("|"))
Dats() = Split(Datos, i - 1 & " ")
Usuario(i) = Dats(1)
Next i

For l = 1 To X
MsgBox Usuario(l)
Next l
End Sub


Private Function ReadField(ByVal Pos As Integer, ByVal Text As String, ByVal SepASCII As Integer) As String
    Dim i As Integer
    Dim LastPos As Integer
    Dim CurChar As String * 1
    Dim FieldNum As Integer
    Dim Seperator As String
    Seperator = Chr$(SepASCII)
    LastPos = 0
    FieldNum = 0
    For i = 1 To Len(Text)
        CurChar = Mid$(Text, i, 1)
        If CurChar = Seperator Then
            FieldNum = FieldNum + 1
            If FieldNum = Pos Then
                ReadField = Mid$(Text, LastPos + 1, (InStr(LastPos + 1, Text, Seperator, vbTextCompare) - 1) - (LastPos))
                Exit Function
            End If
            LastPos = i
        End If
    Next i
    FieldNum = FieldNum + 1
    If FieldNum = Pos Then
        ReadField = Mid$(Text, LastPos + 1)
    End If
End Function

En línea

BlackZeroX
Wiki

Desconectado Desconectado

Mensajes: 3.158


I'Love...!¡.


Ver Perfil WWW
Re: Consulta interpretacion texto
« Respuesta #7 en: 5 Marzo 2011, 05:02 am »

.
Si usas el Split con ese tipo de datos deberias usar una estructura para que todo sea mas organizado.

Temibles Lunas!¡.
En línea

The Dark Shadow is my passion.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Consulta sobre texto dinámico en Flash
Diseño Gráfico
Athagan 2 3,436 Último mensaje 18 Noviembre 2006, 17:33 pm
por Athagan
CONSULTA DE TABLAS POR FILTRADO DE TEXTO
PHP
smagno 5 3,778 Último mensaje 27 Octubre 2009, 01:36 am
por smagno
Consulta~Editar archivo de texto en una linea especifica.
PHP
volteo0101 3 6,927 Último mensaje 9 Febrero 2011, 07:19 am
por volteo0101
Programa que consulta archivo de texto
Programación C/C++
mark182 6 7,629 Último mensaje 27 Julio 2011, 22:21 pm
por mark182
Curso de interpretación de sueños « 1 2 »
Foro Libre
Interpretación de sueños 14 10,084 Último mensaje 23 Julio 2021, 04:39 am
por WHK
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines