Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: Hendrix en 5 Marzo 2006, 17:14 pm



Título: Encontrar una palabra dentro de un texto
Publicado por: Hendrix en 5 Marzo 2006, 17:14 pm
Weno, ya se que esto es facilito, pero no lo se hacer (se que es kon una instruccion, pero no se kual)...

Weno, supongamos que dentro de la variable texto esta este texto:

the Hendrix Power

Oka, supongamos que no konozko el "Space" de la variable texto, y yo quiero enkontrar dentro de este Texto la palabra Hendrix....

Komo se hace para que la variable resultado contenga la posicion de la palabra Hendrix???? y que luego la parabra Hendrix pueda cambiarse por otra palabra????

Weno, Muchas gracias....

Salu2

Hendrix



Título: Re: Encontrar una palabra dentro de un texto
Publicado por: NYlOn en 5 Marzo 2006, 20:41 pm
A ver, primero querias buscar una palabra. Para hacer eso podes usar un For:
Código:
    'Teniendo en cuenta que Text1 es donde vamos a buscar la palabra que esta escrita en el Text2

    Dim i as Long

    For i = 1 To Len(Text1)
        If Mid(Text1, i, Len(Text2)) = Text2 Then
            MsgBox Mid(Text1, i, Len(Text2)) & " - " & i
        End If
    Next i

    'La posicion de la palabra que encontraste seria la variable i, y la longitud es igual a la del Text2...

Tambien habias preguntado como reemplazar una palabra, para eso usas la instruccion Replace:
Código:
   Text1 = Replace(Text1, Text2, Text3)

   'Text1 es donde vamos a reemplazar la palabra
   'Text2 es la palabra que queremos reemplazar
   'Text3 es la palabra que se va a poner en lugar de la del Text2

Bueno espero que se entienda y que te sirva.

Un saluod.-


Título: Re: Encontrar una palabra dentro de un texto
Publicado por: Hendrix en 5 Marzo 2006, 23:56 pm
Cojonudo!!!! Muchas gracias!!!! ;) ;) ;) ;)

Salu2

Hendrix



Título: Re: Encontrar una palabra dentro de un texto
Publicado por: .Slasher-K. en 6 Marzo 2006, 00:14 am
Código:
  ' Reemplaza Space por HendriX
  '
  sData = Replace$(sData, "Space", "HendriX")

o

Código:
Function ReplaceStr(ByVal Text As String, ByVal Find As String, ByVal NewStr As String) As String
         Dim lPos&

  lPos = InStr(1, Text, Find)

  If lPos Then
    Mid(Text, lPos, Len(Find)) = NewStr
    ReplaceStr = Text
  End If
End Function

En el caso de TextBox

Código:
      Dim lPos&, sFind$

  sFind = "Space"
  lPos = Instr(1, txtData, sFind)

  If lPos Then
    txtData.SelStart = lPos
    txtData.SelLength = Len(sFind)
  End If


Título: Re: Encontrar una palabra dentro de un texto
Publicado por: Hendrix en 6 Marzo 2006, 16:01 pm
Muchas gracias maestro Slash!!!! ;D ;D ;D ;) ;) ;)

Salu2

Hendrix