2009-08-08 10 views
0

Comment cela se produit Faux?C#/regex, question simple

Console.Write(Regex.IsMatch("[abcde]{1,16}", "babe")); 

Qu'est-ce qui ne va pas avec mon regex? Cette regex ne se traduit-elle pas en gros: contient entre 1 et 16 caractères, un e à travers?

Répondre

2

Vos arguments sont échangés. À savoir, utilisez:

Regex.IsMatch("babe", "[abcde]{1,16}") 

à la place,

+0

ah! Bonne prise. –

1

qui va correspondre à l'un des personnages de « bébé » qui tombent entre un et e. Ainsi, par exemple, "babez" correspondrait à "bébé". J'ai le sentiment que vous voulez le traiter comme une chaîne de match. Essayez:

[a-e]{1,16}$