hola, he estado probando y no consigo averiguar como hacer esto:
dim var1 as string, var2 as string
var1 = "6801|127.0.0.1¤"
var2 = "127.0.0.1¤"
if var1 = * & var2 then
msgbox "funciona"
end if
lo que intento es conseguir que el asterisco lo reconozca como que si a variable var1 = a cualquiercosa y 127.0.0.1¤" entonces:
usando el asterisco de comodin, he provado varias maneras distintas, pero no lo consigo, esto se puede hacer? de alguna forma?
he probado a poner el asterisco asi: '*' ; ""*"" ; "*" ; ''*'' ; * ; (*) y nada.... alguna idea?
siguiente duda, estaba probando hacer esto:
var1 = "6801|127.0.0.1¤6802|192.168.0.1¤6803|192.168.1.3¤"
y ahora queria eliminar por ejemplo esta parte de la cadena ( 6802|192.168.0.1¤ ), pero no se como se podria hacer, habia pensado en usar punteros como en C, y hacer algo asi:
lee hasta "|", es igual a 6802?
no
guardalo y lee hasta "¤" es igual a 6802?
no
guardalo y lee hasta "|", es igual a 6802?
si
no guardes hasta "¤"
se puede hacer eso usando punteros? sabeis un metodo mejor?
un saludo gracias
La Verda no entiendo mucho lo que quieres lograr.
En el primer codigo que significa eso "¤"
Citarhe probado a poner el asterisco asi: '*' ; ""*"" ; "*" ; ''*'' ; * ; (*) y nada.... alguna idea?
que yo sepa, el * se usa unicamente para hacer multiplicaciones en vbasic, nose puede usar como comodin, tendrias que idear otra forma de codigo
Saludos
ok gracias, esa era la duda, no sabia si tambien podria servir de comodin, asi que una manera de saberlo era provando :P
gracias, un saludo!
Yo creo que tengo una solucion aver si te he entendido bien:
dim var1 as string, var2 as string
var1 = "6801|127.0.0.1¤"
var2 = "127.0.0.1¤"
if var1 = * & var2 then
if right(var1,len(var2)) = var2 then
'funciona
end if
Con eso compararias la parte final de var1 con var2 y si son igulaes es que funciona, es eso lo que querias?
Saludos!!
esto es lo que yo buscaba, y no sabia si habia alguna manera sencilla de hacerlo, como no lo he visto, pues me he machacado un poco el seso y se me ha ocurrido esta chapucilla de codigo :-[ , sin bucles for ni while :-[ , only "goto"
COMPARAR CADENAS, BUSCANDO UNA CADENA DENTRO DE OTRA CADENA
ejemplo:
Citartext2.text = "hola caracola"
text1.text = "raco"
click en buscar y resultado = TRUE , al haber encontrado "raco" en la cadena "hola caracola"
objetos: 2 textbox y un commandbuton
Dim z As Boolean
Private Sub Command1_Click()
x = busca(Text2, Text1)
MsgBox z
End Sub
Private Function busca(x As String, y As String)
Dim cuen1 As Integer, cuen2 As Long
cuen1 = 1
cuen2 = Len(x)
If cuen2 > Len(y) Then
z = False
GoTo b
End If
a:
If Mid(y, cuen1, cuen2) = x Then
z = True
GoTo b
Else
If cuen1 > Len(y) Then
z = False
GoTo b
End If
cuen1 = cuen1 + 1
End If
GoTo a:
b:
lo otro que buscaba era algo parecido pero al reves, buscar y eliminar una cadena que haya en otra cadena, como lo que yo queria era muy especifico, el codigo esta hecho en base a lo que yo necesitaba, para borrar de ¤ a ¤ sabiendo un dato que hiba antes de | , asi que supongo que modificandolo un poco os podria valer parar hacerlo mas general su uso:
BORRAR UNA CADENA SABIENDO UN DATO, DE ENTRE ESTOS CARACTERES ¤ Y ¤
objetos: 2 label
Private Sub Form_Load()
Dim lol As String, var1 As String, var2 As String, var3 As String, x As Long, y As Long
var1 = "6801|127.0.0.1¤6802|127.0.0.3¤6803|127.0.0.2¤"
var2 = "6802"
lol = "|"
a:
x = x + 1: y = 1
If x = Len(var1) Then GoTo c
If lol <> Mid(var1, x, y) Then
var3 = var3 + Mid(var1, x, y)
GoTo a
Else
If var2 = Right(var3, 4) Then
var3 = Left(var3, Len(var3) - 4)
b:
x = x + 1
If x = Len(var1) Then GoTo c
If Mid(var1, x, y) = "¤" Then
GoTo a
Else
GoTo b
End If
Else
End If
var3 = var3 + lol
GoTo a
End If
c:
If Right(var3, 1) <> "¤" Then var3 = var3 + "¤"
Label1.Caption = var1
Label2.Caption = var3
End Sub
lo que hace es que dandole esta cadena:
6801|127.0.0.1¤6802|127.0.0.3¤6803|127.0.0.2¤
yo queria eliminar el numero de puerto que yo quiera y ala vez la ip que hiba al lado, asi que por ejemplo si en var2, le poniamos 6802, borraria y quedaria asi:
6801|127.0.0.1¤6803|127.0.0.2¤
se entiende bien, no? estas eran las soluciones a mis problemas , jeje, lo necesitaba para otra duda que pregunte, y ahora con combiando estas cosas, posteare la solucion a otro post, que me tenia intrigado :p
un saludo