SoloCodigo

Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: MindEye en Viernes 2 de Enero de 2004, 13:58

Título: Como Localizar Una Palabra En Un Txt
Publicado por: MindEye en Viernes 2 de Enero de 2004, 13:58
- Antes de nada, FELIZ AÑO NUEVO A TODOS . . .

 - Sabría decirme alguien como puedo localizar una palabra dentro de TXT.
Título: Re: Como Localizar Una Palabra En Un Txt
Publicado por: cpmario en Sábado 3 de Enero de 2004, 05:08
Usa la instrucción

InStr([start, ]string1, string2[, compare])

    Dim lngPos As Long
    Dim strWord As String
    strWord = "Palabra"
    'lngPos posición de la palabra en TextBox
    lngPos = InStr(1, Text1.Text, strWord)

 :)
Título: Re: Como Localizar Una Palabra En Un Txt
Publicado por: Pakun en Viernes 16 de Enero de 2004, 10:38
viendo este tema......
como se le haria, para que ya una vez encontrada la palabra, me recoja un valor que tiene a un lado???

Por ejemplo:

XXXXXX XXXXXXXXXXXXXX XXXXXXXXXXXXXXX
XXXX XXXXX Palabra Valor XXXXXXXXX XXXXXX
XXXXX XXXXXXXXXXXXXXXX XXXXXXX XXXXXXX
XXXXXXXXX XXXXXXXXXXXXX XXXXXXXXXXXXX

Necesito encontrar 'Palabra' y se que junto a ella estara un valor (la longitud puede variar) inclusive puede estar en diferentes renglones, pero siempre entre espacios en blanco

Esto es lo que llevo ahorita
lo que necesito es, ke al momento de encontrar esa cadena, me tome el siguiente valor (el cual esta rodeado de dos espacios en blanco, kreo ke en ascii viene siendo el char 32) pero su longitud puede variar, ah y el valor es numerico.

Private Sub Command1_Click()
 Dim Search, Where   ' Declara variables.
   ' Obtiene del usuario la cadena de búsqueda.
   
    Search = InputBox("Escriba el texto que desea buscar:")

   Where = InStr(Text1.Text, Search)    ' Busca la cadena en el texto.
   If Where Then                     ' Si se encuentra,
      Text1.SelStart = Where - 1  ' se establece el inicio de la selección
      Text1.SelLength = Len(Search) ' y se establece la longitud para
      Text1.SetFocus                      ' seleccionar.
     
   Else
      MsgBox "Cadena no encontrada."  
   End If

End Sub

Solo necesito el primer numero despues de cada palabra, para despues extraerlo y pasarlo aun textbox

Valor0 60 0 0 0 0
Valor1 838 0 0 0 0
Valor2 5759 0 0 0 0
Valor3 6399 0 0 0 0
Valor4 11556 0 0 0 0

Tal vez esta medio complicado esto, pero ojala y me puedan ayudar
Gracias
Título: Re: Como Localizar Una Palabra En Un Txt
Publicado por: Brroz en Viernes 16 de Enero de 2004, 12:07
Hola Pakun.

Podrías usar una función de este estilo:

Código: Text
  1.  
  2. Private Function RecuperarValor( _
  3. ByVal Cadena As String, _
  4. ByVal PalabraABuscar As String) As String
  5.  
  6.     Dim lng1 As Long
  7.     lng1 = InStr(1, Cadena, PalabraABuscar)
  8.     If lng1 = 0 Then
  9.         MsgBox "'" & PalabraABuscar & "'" & vbCrLf _
  10.         & "No se pudo localizar el texto" _
  11.         , vbExclamation, "Buscar"
  12.         Exit Function
  13.     End If
  14.     
  15.     lng1 = lng1 + Len(PalabraABuscar)
  16.     If lng1 < Len(Cadena) Then
  17.         lng1 = InStr(1, Cadena, Chr(32))
  18.         If lng1 = 0 Then Exit Function
  19.     Else
  20.         Exit Function
  21.     End If
  22.     
  23.     Cadena = LTrim(Mid(Cadena, lng1))
  24.     lng1 = InStr(lng1, Cadena, Chr(32))
  25.     If lng1 > 0 Then Cadena = Left(Cadena, lng1)
  26.     
  27.     RecuperarValor = RTrim(Cadena)
  28.     
  29. End Function
  30.  
  31.  

Abur.
Título: Re: Como Localizar Una Palabra En Un Txt
Publicado por: Pakun en Sábado 17 de Enero de 2004, 01:56
orale gracias, deja lo cheko :D