J'utilise le code suivant pour valider une zone de texte par rapport aux numéros vides ou à 11 chiffres (qui sont les deux corrects tandis que toutes les autres combinaisons de caractèresTRS sont incorrectes).
<asp:RegularExpressionValidator ID="numbertextboxval" runat="server" ErrorMessage="number not correct" Display="Static" ControlToValidate="numbertextbox" ValidationExpression="([0-9]{11} | (^.))"/>
3 Réponses :
Si les chiffres ne peuvent pas démarrer avec zéro, utilisez:
^([1-9]\d{10})?$
Par défaut, WhitSpace est significatif, il ne correspond donc que 11 chiffres suivis d'un espace. Supprimer l'espacement autour de
| code>.
La regex est assez simple
\ d {11} code> ou
| code> rien `` .. donner
^ (\ d {11} |) $ code>
Dupliqué possible de regex, numéro ou vide
Est zéro un charcuter valide? Sinon, vous avez besoin de quelque chose comme
[1-9] \ d {10} code>
Si vous souhaitez correspondre à 11 chiffres ou à une chaîne vide, essayez
^ (?: [0-9] {11})? $ Code>