USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Separar valores de uma string - Difícil
Álvaro
Pontos: 2843
GUARULHOS
SP - BRASIL
Postada em 03/10/2007 09:16 hs            
Galera bom dia !!!

Preciso de uma grande ajuda, em um probleminha chato que estou tendo.
Estou pegando os valores da leitura de um determinado módulo e jogando em um label, o valor que vem desse módulo vem assim:
>+01.693+01.693+01.693+01.693+01.693+01.090+00.696+00.356
Eu preciso separa isso em oito variáveis, nesse caso ficariam assim:
variável 1=1.693,variável 2=1.693,variável 3=1.693,variável 4=1.693
variável 5=1.693,variável 6=1.090,variável 7=0.696,variável 8=0.356

A exibição dos dados é padrão ou seja sempre começa com o sinal de maior e nos demais valores vem o sinal de positivo seguido do zero, ou negativo seguido do zero.

Então para levar em conta para separar os dados, tenho que eliminar o primeiro campo (>) e depois separar os valores com os sinais, más tenho que levar em conta que se ele for negativo(-0), o número terá que ir para a variável negativo também.EX
>+01.693+01.693+01.693+01.693+01.693-01.090-00.696+00.356
variável 1=1.693,variável 2=1.693,variável 3=1.693,variável 4=1.693
variável 5=1.693,variável 6=-1.090,variável 7=-0.696,variável 8=0.356

Alguém sabe como posso fazer essa separação, pensei em usar o mid ou o replace, más não consegui fazer funcionar do jeito que eu queria, talvez não esteja usando a forma correta, pois não os conheço muito bem.
Alguém poderia me dar uma luz ?!
vlw a todos e um grande abraço
     
kerplunk
Pontos: 2843 Pontos: 2843 Pontos: 2843
SÃO PAULO
SP - BRASIL
Postada em 03/10/2007 09:42 hs         
Como diria jack o estripador, vamos por partes:
dim x as string
dim splitado
x=">+01.693+01.693+01.693+01.693+01.693-01.090-00.696+00.356"
x=replace(x,">","") 'Eliminando o ">"
x=replace(x,"+","+|") 'Substituindo "+" por "+|"
x=replace(x,"-","-|") 'Substituindo "-" por "-|"
'Nesse ponto a variável está:
'+|01.693+|01.693+|01.693+|01.693+|01.693-|01.090-|00.696+|00.356
splitado = split(x,"|")
 
Nesse ponto vc vai ter uma array com todos os valores separados(variável "splitado"), daí pode trabalhar com eles na boa.
 
     
Álvaro
Pontos: 2843
GUARULHOS
SP - BRASIL
Postada em 03/10/2007 10:09 hs            
Cara valeu ficou show !!!
Eu apenas fiz uma alteração na substituição do segundo replace coloquei |+, pois no momento que estava sendo splitado o resultado, ele estava saindo com o valor 01.693+, ou seja estava pegando o sinal do próximo nº.
No mais funcionou que foi uma beleza.
Vlw
Abração
     
kerplunk
Pontos: 2843 Pontos: 2843 Pontos: 2843
SÃO PAULO
SP - BRASIL
Postada em 03/10/2007 10:17 hs         
Ok então, feche o post
     
Página(s): 1/1    

CyberWEB Network Ltda.    © Copyright 2000-2025   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página