-
Formule Regex C#
Bonjour!
Je fais un travail d'école en WPF C# et je voudrais forcer un format d'expression sur un textbox.
J'utilise un objet Regex et je voudrais que le format soit ainsi:
(Commence par une seule lettre majuscule)->(0 ou 1)(Fini par une seule lettre majuscule) de longueur max 5 caractères. Donc ex.: A->1B, C->0C, B->1D etc.
J'ai fait comme ceci var regex = new Regex("^[A-Z]([0-1]|([0-1][A-Z])|[e])$") pour les lettres et le chiffre ça fonctionne mais pour inclure un seul tiret et un seul signe de plus grand je ne sais pas trop comment l'inclure dans la formule. Je sais que ça doit avoir l'air de quelque chose comme ça
("@[-{1}>{1}]")
merci pour votre aide.
-
Tu te compliques pour rien avec tes parenthèses et tes pipes. Les parenthèses servent à grouper, soit pour répéter le groupe, soit pour mettre en facteur plusieurs alternatives, soit pour capturer. Le pipe signifie OU et tu n'en as pas besoin ici.
Inutile de tenir compte du nombre de caractères, vu que celui-ci découle de ta description.
La pattern est donc: Regex regex = new Regex(@"^[A-Z]->[01][A-Z]$");.