Visual Basic - recorrer un textbox

Life is soft - evento anual de software empresarial
 
Vista:

recorrer un textbox

Publicado por claudia (1 intervención) el 13/01/2006 14:34:08
hola necesito buscar cierto caracter en un textbox...

ejemplo tengo en el textbox lo siguiente:
"lycos.es"

lo que necesito es recorrer el textbox y encontrar el caracter "."

alguien puede ayudarme?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Función InStr

Publicado por Zoto (55 intervenciones) el 13/01/2006 15:42:04
Buenas, Claudia.

Existe una función en Visual Basic específica para lo que deseas, llamada InStr.
A continuación la comento y te muestro un ejemplo de uso:

------------------------------------------------------------------------------
Tipo: Función
Nombre: InStr
Descripción: Determina si una cadena de texto se encuentra dentro de otra dando la posición de su primer carácter.
Valor devuelto:
Número que determina la posición del primer carácter de la cadena de texto buscada en el texto en el cual se busca.
Ejemplo: si el texto en el cual se busca es "visual basic" y el texto a buscar es "basic", el valor devuelto será la posición de la "b" de "basic" en el texto, es decir, 8.
Si el texto buscado no se encuentra dentro de la variable, el valor devuelto es nulo (0).
Parámetros:

-Start -> valor numérico que determina la posición del carácter a partir del cual se va a empezar a buscar el texto. Si no se especifica, se empieza a buscar desde el principio del texto.
-String1 -> texto en el cual se buscará
-String2 -> texto buscado

-Compare -> variable de tipo vbCompareMethod que determina el tipo de comparación a realizar. Hay 3 constantes predefinidas:
-vbBinaryCompare = 0 (POR DEFECTO)
-vbTextCompare = 1
-vbDatabaseCompare = 2
------------------------------------------------------------------------------
Ejemplo de uso de InStr:

'Uso simple (especificando parámetros principales)

Dim Str1 As String
Dim Str2 As String

Str1 = "buenos días"
Str2 = "os"

MsgBox "Posición de " & Str2 & " dentro de " & Str1 & " : " & InStr(Str1,Str2)

'El valor devuelto sería 5.

'Uso incluyendo parámetro Start:

Dim Str1 As String
Dim Str2 As String
Dim Start As Integer

Str1 = "buenos días"
Str2 = "os"
Start = 4

MsgBox "Posición de " & Str2 & " dentro de " & Str1 & " : " & InStr(Start, Str1,Str2)

'El valor devuelto sería también 5.
'Hay que especificar que si el valor del parámetro Start es mayor a la posición del primer carácter del texto buscado, el resultado de InStr será 0 (puesto que empezará a buscar a partir de una posición más avanzada y el texto buscado no coincidirá). Aquí muestro un ejemplo:

'Uso incluyendo parámetro Start mayor que el resultado:

Dim Str1 As String
Dim Str2 As String
Dim Start As Integer

Str1 = "buenos días"
Str2 = "os"
Start = 6

MsgBox "Posición de " & Str2 & " dentro de " & Str1 & " : " & InStr(Start, Str1,Str2)

'El valor devuelto sería 0.
'Porque pese a que el texto "os" sí que se encuentra en el texto "buenos días", el parámetro Start ha sido establecido a 6, con lo cual la función ha empezado a buscar coincidencias a partir de el sexto carácter, es decir, la "s" de la palabra "buenos", con lo cual no se ha encontrado ningún resultado coincidente y el valor devuelto ha sido nulo.

'Aquí muestro el código que solicitabas realmente, es decir, uno que devolviera si un texto está dentro de otro. Lo he escrito en una función simple que devuelve un valor Boolean (True - el texto si está/ False - el texto no está):

Public Function IsText(ByVal Text1 As String, ByVal Text2 As String) As Boolean
IsText = CBool(InStr(Text1,Text2))
End Function


'Ejemplo de uso de la función anterior:

Dim Str1 As String
Dim Str2 As String
Str1 = Inputbox("Introduce el texto donde buscar: ","Función InStr")
Str2 = Inputbox("Introduce el texto a buscar: ","Función InStr")

If IsText(Str1,Str2) Then
MsgBox "El texto sí está"
Else
MsgBox "El texto no está
End If

_____________________________________

Bueno espero que mi explicación no se te haga pesada y que te ayude a entender el funcionamiento de la función InStr, así como su implementación para descubrir si un texto está dentro de otro.
Mucha suerte y hasta pronto.

Zoto
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar