Regex maRegex = new Regex(@"[a-z]+[ score ][\d+]");
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionTextBox1.text += reader.Value;
if (reader.Value != "Tape ici le texte tu ne veux pas") richTextBox1.Text += reader.Value;
reader.Value.Replace("score ", "");//remplace "score " par rien
private void TestRegex() { string[] tab = { "version="1.0" encoding="utf-8"", "ça ne marche pas", "Robert score 10", "Marche pas non plus", "jEan score 22.", "Robert scure 10"}; foreach (string texte in tab) { Regex maRegex = new Regex(@"(?([a-z]|[A-Z])+)[ ]+score[ ]+(?\d+)");//initialise la regex /* explications de la syntaxe * [a-z] quelque chose compris entre a et z => une minuscule * [A-Z] quelque chose compris entre A et Z => une majuscule * [a-z]|[A-Z]une nimuscule ou une majuscle * ([a-z]|[A-Z])+) une nimuscule ou une majuscle ou moins 1 fois * (?([a-z]|[A-Z])+) si je trouve "une nimuscule ou une majuscle ou moins 1 fois", je stocke le resultat dans le groupe prenom * [ ]+ au moins un epsace * score exactement ecrit comme ça * \d un décimal (attention j'ai mis @ au début pour ne pas avoir de multiples \) * \d+ un decimal au moins une fois * (?\d+) un decimal au moins une fois stocké dans le groupe points */ Match resultat = maRegex.Match(texte); if (resultat.Success)//si ça colle, on recupére les valeurs des groupes et on les affiche { string prenom = resultat.Groups["prenom"].Value; string points = resultat.Groups["points"].Value; MessageBox.Show(string.Format("{0} a obetenu {1} point(s)", prenom, points)); } else MessageBox.Show(string.Format("'{0}' ne correpond pas au format",texte),"Erreur", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
Public Form1() { TestRegex(); ..... }