Votre modèle d'expression régulière doit être juste: \d+
(match de 1 numéros ou plus). Pour exemple, il est probablement préférable de ne pas déterminer la longueur minimale à l'aide regex car tout ce que vous aimez est qu'il a au moins 1 nombre et est au moins de 8 caractères
Regex regEx = new Regex(@"\d+");
isValid = regEx.Match(myString).Success && myString.Length >= 8;
Le motif \d
est la même chose que [0-9]
et le symbole +
signifie at least one of
. Le symbole @
en face de la chaîne est de sorte que ce que tenter d'échapper \d
.
Comme mentionné par El Ronnoco dans les commentaires, juste \d
correspondrait à votre exigence. Connaître \d+
est utile pour les modèles plus compliqués où vous voulez quelques chiffres entre certaines chaînes, etc.
Aussi: Je viens de lire quelque chose que je ne connaissais pas. \d
correspond à n'importe quel caractère dans la catégorie Unicode number, decimal digit qui est beaucoup plus que juste [0-9]
. Quelque chose à savoir si vous voulez juste un nombre. Sinon, la réponse de El Ronnoco de [0-9]
pour votre modèle est suffisante.
Avez-vous eu un coup de poignard? – razlebe
Je suggère qu'il est préférable de les trier et de comparer –