• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Break7

validação

7 mensagens neste tópico

boa noite.

Queria que me ajudassem numa validação, quando o utilizador inserir um valor numerico, num campo strings, o programa nao "crasche", ou seja, avisando o utilizador para efectuar a correcção, isto em Console nao em Windows Forms.

Espero que tenha sido claro.

Obrigado

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Podes usar regular expressions para fazer essa validação.

Tm la muita coisa...

Podias me dar um exemplo concreto?

obrigado

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Queres validar se os dados que o utilizador inseriu é um número, certo?

Tens a função IsDigit do VB. Só tens é de utilizar o namespace Microsoft.VisualBasic.IsDigit

Assim, por cada vez que o utilizador inserir um valor, vês logo se é número ou não.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Break7, és muito vago no que pretendes...

um campo string aceita SEMPRE valores numéricos... nunca cracha....

Dá lá um exemplo mais concreto do que pretendes, a ver se consigo ajudar...

(coloca algum código se possível)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

boas

O que pretendo é o seguinte:

Por exemplo tnho um campo de strings, e o utilizador insere numeros nesse campo quando ele é string, eu sei que nao crascha, mas eu queria que o programa avisá-se o utilizador e que lhe dissexte que nao pode inserir valores numericos, só pode inserir letras.

penso que fui claro..

Se me pudessem dar umas dicas agradecia..

Cumprimentos

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Olá, Break7!

Como já te disseram, podes (e deves, neste caso) usar expressões regulares. Vê lá se isto te serve:

// não te esqueças deste using
using System.Text.RegularExpressions;

// ...

string str = "";
do
{
	Console.WriteLine("Inserir letras:");
	str = Console.ReadLine();
} while(!valida(str));

// ...

static bool valida(string str)
{
if (Regex.IsMatch(str, @"\A[A-Za-z]+\Z"))
	return true;
else
{
	Console.WriteLine("SÓ LETRAS, PÁ!");
	return false;
}
}

// ...

Abraços!

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora