BUSCA NO TEXT BOX

VANBH1 11/09/2015 13:47:02
#451279
Pessoal, acho que essa é simples mas não estou conseguindo resolver. Tenho uma text box que contém duas informações distintas, como no exemplo abaixo.

Bairro: SÃO JOSé Cidade: BELO HORIZONTE

Gostaria de saber como eu faço para buscar somente o que está escrito depois de [ô]Cidade[ô], sendo que estas informações mudam de tamanho.
NICKOSOFT 11/09/2015 13:54:51
#451281
Resposta escolhida
veja, uma forma até lenta seria vc montar um for de 1 ao tamanho da string, invertido, do tamanho da string pra 1, e vir usando um mid(string,valor do for,1) e testando qnd encontrar o : q seria o caracter coringa ai, pegar o mid(string,valor do for+1,valor do for)
acho q da pra entender.....
vc vem no for do final pro inicio da string testando caracteres, qnd for : vc para e pega tudo q já foi testado da string.....bem bruta a forma de fazer
VANBH1 11/09/2015 13:57:23
#451282
Já é uma luz...

Vou tentar.
NICKOSOFT 11/09/2015 13:58:04
#451284
por em código pq assim ficou triste
  
For index = MetroTextBox1.Text.Length To 1 Step -1
Dim caracter As String = Mid(MetroTextBox1.Text, index, 1)
If caracter = [Ô]:[Ô] Then
MessageBox.Show(Mid(MetroTextBox1.Text, index + 1, index))
Exit For
End If
Next
SINCLAIR 11/09/2015 14:11:33
#451291
Colega,

Supondo que seja isto

Text1.Text = [Ô]Bairro: SÃO JOSé Cidade: BELO HORIZONTE[Ô]

Use a instrução Instr, assim...

Dim int_Posicao             As Integer
Dim str_Texto_Apos_Cidade As String

int_Posicao = InStr(Text1.Text, [Ô]Cidade:[Ô])

Select Case int_Posicao

[ô]Não tem [Ô]Cidade:[Ô] no Text1
Case 0

[ô]Avisar que não tem cidade no Text1
MsgBox ([Ô]Não há cidade informada.[Ô])

[ô]Tem [Ô]Cidade:[Ô] no Text1
Case Else

[ô]Pegar de [Ô]:[Ô] para frente
str_Texto_Apos_Cidade = Mid(Text1.Text, int_Posicao + 7)

[ô]Retirar espaços à esquerda
str_Texto_Apos_Cidade = LTrim(str_Texto_Apos_Cidade)

[ô]Retirar espaços à direita
str_Texto_Apos_Cidade = RTrim(str_Texto_Apos_Cidade)

[ô]Avisar qual a cidade
MsgBox ([Ô]A cidade é [Ô] & str_Texto_Apos_Cidade)


Coloquei em VB6 porque estou sem o VS aqui, mas é facinho de converter.

Tudo de bom.

VANBH1 11/09/2015 14:24:45
#451293
show de bola!!

Beleza pessoal, problema resolvido. muito obrigado.
GUIMORAES 11/09/2015 14:44:11
#451294
dim texto as string = split([Ô]CIDADE:BELO HORIZONTE[Ô], [Ô]:[Ô])(1)

o [Ô]1[Ô] seria a posição, ai você pode pegar qualquer posição da sua string.

você pode contar quantos registros possuem com o delimitador
msgbox(UBound(Split([Ô]CIDADE:BELO HORIZONTE[Ô],[Ô]:[Ô])))
Tópico encerrado , respostas não são mais permitidas