je besoin d'une expression regualr qui accepte l'entrée suivanteRegex pour les jours xx, xx mois ou xx ans
1 jour
4 Jours
15 Jours
1 mois
12 mois
1 an
5 ans
Les numéros peuvent avoir n'importe quelle longueur. Des idées?
je besoin d'une expression regualr qui accepte l'entrée suivanteRegex pour les jours xx, xx mois ou xx ans
1 jour
4 Jours
15 Jours
1 mois
12 mois
1 an
5 ans
Les numéros peuvent avoir n'importe quelle longueur. Des idées?
Essayez ce,
^(1 (Day|Month|Year)|[1-9][0-9]* (Days|Months|Years))$
Il n'acceptera pas ce que je suppose est entrée invalide tel que "5 jours" et "04 mois"
Explication:
Soit l'entrée est "1 jour/mois/année", soit un chiffre compris entre 1 et 9 suivi d'un nombre quelconque de chiffres 0-9 suivi d'un espace et d'une des chaînes "Jours" "Mois" ou "Années"
Solution élégante – Nigel
04 Des mois peuvent être considérés comme valides par les personnes posant cette question, car les utilisateurs rencontrent tellement de mauvais validateurs qu'un zéro prédominant pourrait être attendu et qu'un utilisateur pourrait le supposer. – eyelidlessness
Aucune ancre ou limite? – tchrist
\d+\s+(Day|Month|Year)(s)?
Je mettrais un '\ b' de chaque côté de cela, à condition qu'un'^'et' $ 'ne soient pas ce qui est désiré. – tchrist
dans quel but? Voulez-vous obtenir les chiffres? Voulez-vous appliquer un format d'entrée spécifique? Est-ce que la chaîne peut être combinée? Veuillez ajouter plus d'informations sur les entrées et sorties attendues. – Gordon