krim43
Messages postés12Date d'inscriptionjeudi 19 juin 2008StatutMembreDernière intervention 2 juillet 2008
-
2 juil. 2008 à 15:10
cs_Bidou
Messages postés5487Date d'inscriptiondimanche 4 août 2002StatutMembreDernière intervention20 juin 2013
-
2 juil. 2008 à 22:04
bonjour tout le monde voila mon problème:
Ecrire un programme permettant d'afficher un message de bienvenue à l'utilisateur qui entre son prénom. Si la zone de saisie est vide, le programme enverra un message d'erreur. Si le prénom possède un caractère différent de l'alphabet (a à z) et different de " -"ou " ' ", le programme enverra un message d'erreur.
je vous affiche ce que j'ai fait, je coince juste pour ajouter la condition qui permet de verifier le "-" et le " ' ":
private void btValider_Click(object sender, EventArgs e)
{
if (txtPrenom.Text == "")
{
MessageBox.Show("Saisie obligatoire du prenom", "Erreur de saisie", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
else
{
int lg = txtPrenom.Text.Length;
string pre = txtPrenom.Text;
string prebas = pre.ToLower();
int i;
for (i = 0; i < txtPrenom.Text.Length; i++)
{
if ((prebas[i] < 'a') || (prebas[i] > 'z'))
{
int num = i + 1;
MessageBox.Show("Caractère " + prebas[i] + " interdit en position " + num + ".", "Erreur de saisie", MessageBoxButtons.OK, MessageBoxIcon.Error);
txtPrenom.Focus();
return;
}
else
{
int num = i + 1;
MessageBox.Show("Caractère N°" + num + " : " + pre[i], "Décomposition du prénom", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
Liverion
Messages postés296Date d'inscriptionmardi 22 avril 2008StatutMembreDernière intervention18 août 2008 2 juil. 2008 à 15:37
Regarde avec les expressions regulières (RegEx) , tu devrais trouver ton bonheur.
~~
Les trois lois de Codes-Sources :
Loi 1) Tu lis et respectes le reglement
Loi 2) Tu penses à valider si une reponse apportée à ton problème t'a aidé
Loi 3) Si tu ne respectes pas les 2 premières ....TU SORS !!
Liverion
Messages postés296Date d'inscriptionmardi 22 avril 2008StatutMembreDernière intervention18 août 2008 2 juil. 2008 à 16:19
ben tu marques dans ta RegEx que tu prends tous les caractères que tu veux, alors le IsMatch() renverra false, comme ca tu peux detecter. Pour la regex en particulier, je sais pas ce que ca donnerait, j'en ai jamais fait :)
~~
Les trois lois de Codes-Sources :
Loi 1) Tu lis et respectes le reglement
Loi 2) Tu penses à valider si une reponse apportée à ton problème t'a aidé
Loi 3) Si tu ne respectes pas les 2 premières ....TU SORS !!
krim43
Messages postés12Date d'inscriptionjeudi 19 juin 2008StatutMembreDernière intervention 2 juillet 2008 2 juil. 2008 à 16:13
j'ai lu des choses sur ta fonction.
j'ai compri a peu pres ce que je doit faire
Regex maRegexp = new Regex("^[a-z]+$");
string maChaine = "Salut à tous !!";
bool regOK =maRegexp.IsMatch(maChaine);
if (regOK)
MessageBox.Show("ok");
else
MessageBox.Show("pas ok");