Expression régulière pour le nombre de chiffres
Je veux écrire une expression régulière en C# que uniquement les entrées d'un certain nombre de chiffres uniquement.
Comme la rédaction d'une expression régulière pour valider nombre de 5 chiffres, comme "12345"
- Merci de nous montrer votre propre tentative. Stackoverflow n'est pas là pour faire votre travail pour vous, mais pour vous aider avec vos propres efforts lorsque vous êtes coincé.
- msdn.microsoft.com/en-us/library/az24scfc.aspx
Vous devez vous connecter pour publier un commentaire.
Utiliser la regex suivante avec
Regex.IsMatch
méthode^
et$
seront les ancrages de la correspondance au début et à la fin de la chaîne (respectivement) pour éviter qu'une correspondance soit trouvée dans le milieu d'une longue chaîne, comme1234567890
ouabcd12345efgh
.[0-9]
indique une classe de caractères qui spécifie une plage de caractères à partir de0
à9
. La plage est définie par le code Unicode gamme qui commence et se termine par les caractères spécifiés. Le{5}
suivi derrière est un quantificateur indiquant pour répéter la[0-9]
5 fois.Noter que la solution de
^\d{5}$
est seulement équivalent à la solution ci-dessus, lorsqueRegexOptions.ECMAScript
est spécifié, sinon, il sera équivalent à\p{Nd}
, ce qui correspond à n'importe quel Unicode chiffres - là est la liste de tous les caractères dansNd
catégorie. Vous devriez toujours vérifier la documentation de la langue que vous utilisez sur ce qu'est l'abréviation classes de caractères correspond en fait à.Je vous suggère fortement de lire à travers les la documentation. Vous pouvez utiliser d'autres ressources, telles que http://www.regular-expressions.info/, mais toujours consulter la documentation de la langue que vous utilisez.
Vous pouvez spécifier le nombre de répétitions dans des accolades comme dans:
Si vous voulez l'ensemble de votre entrée de correspondre à un modèle enfermer dans
^
et$
:0-9
chiffres. Il trouvera également d'autres Unicode chiffres^
et$
que j'ai réfléchi dans ma mise à jour de réponse.Cette expression doit passer