Substring de uma determinada hora

19/12/2003

0

A situação é a seguinte:
Tenho um Edit para o usuário inserir horas
tipo ´10:00´
Preciso checar se o valor da 3ª posição do meu edit1.text é igual à ´:´ ...
como faço isso ?

[b:5970dddb07]Título editado pelo Moderador (AZ)[/b:5970dddb07]


Ederbond

Ederbond

Responder

Posts

19/12/2003

Fernando Leal

if Copy(edit1.text, 3,1) = ´:´ then
<comando>

[]´s

Fernando Leal


Responder

19/12/2003

Ederbond

Nesta espressão:
Copy(edit1.text, 3,1)

´3´ é a posição que eu desejo pegar, certo .

e ´1´ Significa o que ?


Responder

19/12/2003

Biffi

quantidade de caracteres que serão copiados.
Agora se vc quer somente verificar se o 3º caracter é ´:´ talvez seja mais simples
if edit1.text[3] = ´:´ then


falow


Responder

19/12/2003

Hunterxxx

significa que a conta ate 3 e pega 1 caracter apenas......

mas no caso eu acho q é 2 ne nao ?
nao comeca do zero nao ????


Responder

19/12/2003

Deus

A sintaxe da função é

Copy(varString, Indice, Quantidade);


Onde você primeiro indica de qual string você vai copiar, em seguida qual a posição de onde será iniciada a cópia, e finalmente quantas posições serão copiadas. Logo, se você executa

Copy(Edit1.text, 3, 1);


Você está copiando o conteúdo do [i:73200f59fd]Edit1.Text[/i:73200f59fd], a partir da 3ª posição, uma posição apenas.

Abraços, dEUS


Responder

19/12/2003

Biffi

[color=green:23e4bf08e3][i:23e4bf08e3] Enviada: Sex Dez 19, 2003 7:36 pm Assunto:

--------------------------------------------------------------------------------

significa que a conta ate 3 e pega 1 caracter apenas......

mas no caso eu acho q é 2 ne nao ?
nao comeca do zero nao ???? [/i:23e4bf08e3][/color:23e4bf08e3]

Toda string é um vetor, e todo vetor começa da posição 1[/list]


Responder

19/12/2003

Deus

Não, nem todo vetor começa a partir da posição 1. Num [i:974175f038]ListBox[/i:974175f038], por exemplo, a lista de elementos começa a partir do 0. Muitos vetores, aliás, começam do 0. Em C, por exemplo, os vetores são obrigatoriamente indexados a partir de 0. Já em Delphi, você pode optar de onde começa e onde termina. Se você quiser, um vetor pode começar em 5, 6, 7, 20.. pode nem ser indexado por números! Um vetor do tipo

arBool: Array[False..True] of String;


É válido, e seria um vetor com duas posições: [i:974175f038]arBool[False][/i:974175f038] e [i:974175f038]arBool[True][/i:974175f038]. :) A questão é que a toda string é vista como um vetor de caracteres, que se inicia a partir da posição 1.


Responder

19/12/2003

Biffi

foi exatamente isso que eu quis dizer (vetor com relação a strings), me expressei mau, desculpem-me.


t+


Responder

19/12/2003

Ederbond

Valeu galera....
Mto obrigado!


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar