Ayuda a verificar si InStr encontró coincidencia o no. Vb.net
Publicado por Braayhaan (1 intervención) el 19/01/2018 14:26:50
Hola tengo el siguiente código que obtiene el texto de un textbox y verifica si hay alguna coincidencia con los caracteres que tengo en mi vector.
El problema es que no se como hacer la condición del InStr para saber si encontró, ya que si encontró no me interesa que siga buscando porque me da error. Segun leí en Internet si InStr es 0 es porque no encontró, pero a mi siempre me devuelve 1, por lo que siempre entra, no importa si encuentra o no.
Me pueden ayudar a verificar si el InStr encontró coincidencia o no?
Les paso mi código.
Si ven que la verificación del if para obtener el texto es media larga es porque no es un TextBox creado en tiempo de diseño. Y los últimos dos if sirven para saber si debe tomar 1 carácter o 2 caracteres. Esto es porque los ultimo elementos de mi vector tienen dos caracteres y los primeros tienen solo uno.
El problema es que no se como hacer la condición del InStr para saber si encontró, ya que si encontró no me interesa que siga buscando porque me da error. Segun leí en Internet si InStr es 0 es porque no encontró, pero a mi siempre me devuelve 1, por lo que siempre entra, no importa si encuentra o no.
Me pueden ayudar a verificar si el InStr encontró coincidencia o no?
Les paso mi código.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Dim vectoroperadores(13) As String
vectoroperadores(0) = "<"
vectoroperadores(1) = ">"
vectoroperadores(2) = "-"
vectoroperadores(3) = "+"
vectoroperadores(4) = "="
vectoroperadores(5) = "/"
vectoroperadores(6) = "*"
vectoroperadores(7) = "Y"
vectoroperadores(8) = "y"
vectoroperadores(9) = "O"
vectoroperadores(10) = "o"
vectoroperadores(11) = "!"
vectoroperadores(12) = ">="
vectoroperadores(13) = "<="
For i = 0 To 13
If (InStr(Me.PanelContenedor.Controls(nombrepanel).Controls("txt").Text, operadores(i))) <> 0 Then
operadores(0) = (InStr(Me.PanelContenedor.Controls(nombrepanel).Controls("txt").Text, operadores(i)))
Dim variableaux As Integer = i
If i = 12 Or i = 13 Then
variableaux = 2
Else
variableaux = 1
End If
operadores(0) = Me.PanelContenedor.Controls(nombrepanel).Controls("txt").Text.Substring(operadores(0), variableaux)
Exit For
End If
Next
Si ven que la verificación del if para obtener el texto es media larga es porque no es un TextBox creado en tiempo de diseño. Y los últimos dos if sirven para saber si debe tomar 1 carácter o 2 caracteres. Esto es porque los ultimo elementos de mi vector tienen dos caracteres y los primeros tienen solo uno.
Valora esta pregunta


0