SoloCodigo

Programación General => Visual Basic 6.0 e inferiores => Visual Basic para principiantes => Mensaje iniciado por: Nuker en Domingo 1 de Abril de 2007, 02:04

Título: Analizando Textos (jojo)
Publicado por: Nuker en Domingo 1 de Abril de 2007, 02:04
:o Hola, necesito saber como analizar texto.. osea...

si yo en una variable tengo esto:

"holacomoandascomenzarprobando123456789"

quiero saber si ahi en ese texto dice... "probando" y si lo dice, como obtener los 4 caracteres siguientes a "probando"


Muchas gracias
Título: Re: Analizando Textos (jojo)
Publicado por: cpmario en Domingo 1 de Abril de 2007, 03:34
Código: Text
  1.     Dim strA As String
  2.     Dim strB As String
  3.     Dim lngX As Long
  4.     strA = "holacomoandascomenzarprobando123456789"
  5.     strB = "probando"
  6.     lngX = InStr(strA, strB)
  7.     Text1.Text = Mid$(strA, lngX + Len(strB), 4)
  8.  
  9.  
:comp:
Título: Re: Analizando Textos (jojo)
Publicado por: Mollense en Domingo 1 de Abril de 2007, 03:34
Bueno. cpmario estaba escribiendo junto a mi y ya te dio la solución.-

Saludos
Título: Re: Analizando Textos (jojo)
Publicado por: Nuker en Domingo 1 de Abril de 2007, 05:03
:lol:  wow, me esta gustando este foro, q rapido me ayudaron!  :)  Muchas gracias!!!!


lo estube mirando y me quedo algo en el tintero, aprobecho a postearlo aca, asi no hay tantos post.


Si tengo en una variable "holacomoandasprobando12345678"

y yo analize de ahi probando, como le quitaria a esa variable el probando?

osea tengo esto: "holacomoandasprobando12345678" y quiero q quede asi

holacomoandas12345678

Muchas gracias
Título: Re: Analizando Textos (jojo)
Publicado por: Mollense en Domingo 1 de Abril de 2007, 07:29
Cita de: "Nuker"
lo estube mirando y me quedo algo en el tintero, aprobecho a postearlo aca, asi no hay tantos post.


Si tengo en una variable "holacomoandasprobando12345678"

y yo analize de ahi probando, como le quitaria a esa variable el probando?

osea tengo esto: "holacomoandasprobando12345678" y quiero q quede asi

holacomoandas12345678

Muchas gracias
Bueno, siguiendo con el código de cpmario.

Mediante la variable lngX vos podés saber donde comienza la palabra probando. ¿No es así?  :rolleyes: ...

...entonces...

Podrías obtener una nueva cadena formada por todos los caracteres que se encuentren antes de lngX concatenados a los posteriores a lngX + el largo de la palabra a eliminar, en este caso 8.

Traduciendo, debería ser algo así (No tengo Visual Basic pero mejuego  :P ):
 
Código: Text
  1. Text1.Text = Mid$(strA, 1, lngX-1) & Mid$(strA, IngX + Len(strB) , Len(strA) - IngX - Len(strB)+1)
  2.  

...en fin, si no es así, es muy parecido  :comp:

Saludos :beer:

PD:
Citar
wow, me esta gustando este foro
Obvio
Título: Re: Analizando Textos (jojo)
Publicado por: Nuker en Domingo 1 de Abril de 2007, 07:38
:lol:  ahhhhhhhhhhhh aeaeaeaeeaeaeaeaa  :hola:  q felizzzz xD


Muchas graciasssssssss

Código: Text
  1.  
  2.    Dim strA As String
  3.    Dim strB As String
  4.    Dim lngX As Long
  5.    strA = "holacomoandascomenzarprobando123456789"
  6.    strB = "probando"
  7.    lngX = InStr(strA, strB)
  8.    Text1.Text = Mid$(strA, 1, lngX - 1) & Mid$(strA, lngX + 8, lngX)
  9.  
  10.  
Título: Re: Analizando Textos (jojo)
Publicado por: Nuker en Domingo 1 de Abril de 2007, 08:53
uh, anda perfecto, pero si lo uso en una funcion tira error y no tengo idea como solucioanrlo O.o es medio fruta me parece...

Error '5' en tiempo de ejecución:
Llamada a procedimiento o argumento no válidos


Código: Text
  1.  
  2. Public Function WinsockGet(pSock As Winsock, ByVal Data As String)
  3.  
  4. If pSock.State = sckConnected Then
  5.  
  6. pSock.GetData Data
  7. DoEvents
  8. WinsockGet = True
  9. Dim Data
  10.  
  11.    Dim strA 'As String
  12.    Dim strB As String
  13.    Dim lngX As Long
  14.    strA = Data
  15.  
  16.  
  17.  
  18. Do While parar = 0
  19.  
  20. If status = "Host" Then
  21.  
  22.    strB = "changeteam"
  23.    lngX = InStr(strA, strB)
  24.   
  25. If Not lngX = "0" Then
  26. Dim changeteamvalor
  27. If Check1.Value = "1" Then
  28. changeteamvalor = "1"
  29. Else
  30. changeteamvalor = "0"
  31. End If
  32. changeteamvalor = "changeT " & changeteamvalor
  33. pSock.SendData (changeteamvalor)
  34. Data = Mid$(strA, 1, lngX - 1) & Mid$(strA, lngX + 10, lngX)
  35. Else
  36. parar = 1
  37. End If
  38. End If
  39.  
  40. Loop
  41. parar = 0
  42.  
  43.  
  44.  
  45.  
  46. Else
  47.  
  48. WinsockGet = False
  49. End If
  50. End Function
  51.  
  52.  




_______________________________________


Solucionado, encontre el problema, lo posteo por si a alguno el pasa lo mismo.

el winsock al conectarmele, tiene la variable Data vacia, asi q antes de andar analizandole lo que dice le puse un...
if Data = vbnullstring then
exit function
WinsockGet = False
end if