Regex, un nombre entre 2 définient

Bonjour,

Je souhaite contrôler la saisie d'un champ numérique, qui soit entre 3010001 et 3019999.

J'ai testé ce qui suit: ^[3010001-3019999]+$
Mais ça ne marche pas.

J'utilise ce script sur des fichiers properties.

Merci de votre aide :)

3 réponses

  1. Si on tolère 301000 :
    ^301[0-9]{4}$
    Sinon :
    ^(301[0-9]{3}[1-9])|(301[0-9]{2}[1-9]0)|(301[1-9][0-9]{2}0)|(301[0-9][1-9][0-9][0-9]0)$
    1
    1. Hello !

      Tu pourrais essayer celle-là :

      /^301[0-9]{3}[1-9]$/
      0
      1. 3010010 serait rejeté alors qu'il aurait peut-être pu être accepté.
        Exclure spécifiquement 3010000 des valeurs possibles risque de compliquer considérablement l'expression régulière.
        /^301[0-9]{4}$/ si on tolère 3010000
        0
    2. J'ai dû utiliser un script js pour ce contrôle.

      Merci tout de même pour vos réponses

      :)
      0