J'essaie d'écrire une expression régulière pour autoriser des chiffres et un seul hypancien au milieu (ne peut pas être au début ou à la fin)
dire motif: J'ai essayé quelque chose comme ça, mais cela permettrait - au début et permettrait également plusieurs - p> Je ne suis pas si bon avec regex Peu d'explications seraient réelles utiles. P> 02-04 code>, 02 code> est acceptable mais
Modèle: - code> ou - code> ou -02 code> ou 04 - code> ou 02-04-06 < / code> sont inacceptables
3 Réponses :
Assez facile: au moins un ( + code>) chiffre ( \ d code>), suivi d'un groupe optionnel contenant un groupe Hyphen-Minus ( - code>), suivi d'au moins un chiffre à nouveau. p> p>
mais cela rendrait valide 02 code> non valide, car un trait d'union est requis par votre expression
Ah désolé; négligé la partie qui a déclaré que le trait d'union-minus est facultatif. Corrigé maintenant. Cette exigence est un peu difficile à voir dans la question, certes, comme chaque explication verbale du motif ressemble à un trait d'union-minus est requise.
Essayez celui-ci:
/^\d{1,2}(-\d{1,2})?$/
Même réponse que la mienne, mais vous m'avez battu. J'ai donc ajouté une explication, avancé et supprimé le mien.
Merci pour l'explication @slim, j'ai besoin de ça
Désolé de vous déranger à nouveau avec cela, mais j'ai besoin que les chiffres ne soient que 2 chiffres (123-346) doivent être considérés comme invalides.
2 chiffres exactement? Ou 1-2 chiffres? \ d [2] code> ou \ d \ d code> correspond à deux chiffres. \ d [1-2] code> ou \ d \ d? code> correspond à 1 ou 2 chiffres.
J'ai mis à jour le non-inscrit pour que cela ne prend en charge que un ou deux chiffres ({1,2} au lieu de +) (et merci @slim)
@Yasmat et vous avez repéré mon [] vs {} échouez :)
Pour les cordes contenant uniquement ce modèle, les éléments suivants doivent fonctionner un groupe de 2 chiffres suivi de la fin moins avec un groupe de 2 chiffres sans moins. P> P>