Je veux valider une chaîne que si elle contient les caractères « 0-9 » de longueur entre 7 et 9.PHP regex simple,
Ce que j'est [0-9] {7,9}, mais cela correspond à une chaîne de dix caractères aussi, que je ne veux pas.
Merci.
Je veux valider une chaîne que si elle contient les caractères « 0-9 » de longueur entre 7 et 9.PHP regex simple,
Ce que j'est [0-9] {7,9}, mais cela correspond à une chaîne de dix caractères aussi, que je ne veux pas.
Merci.
Si vous voulez trouver les numéros de 7-9 chiffres dans une chaîne plus grande, vous pouvez utiliser a negative lookbehind and lookahead pour vérifier le match est pas précédé ou suivi d'un chiffre
(?<![0-9])[0-9]{7,9}(?![0-9])
Ce se décompose comme
(?<![0-9])
assurer le prochain match n'est pas précédé par un chiffre[0-9]{7,9}
correspondent 7-9 chiffres que vous avez besoin(?![0-9])
assurer le caractère suivant n'est pas un chiffreSi vous voulez simplement pour assurer l'intégralité de la chaîne est un nombre à deux chiffres 7-9, ancrer le match au début et à la fin avec^et
^[0-9]{7,9}$
Vous devez utiliser ^[0-9]{7,9}$
.
^correspond au début de la chaîne, tandis que $ correspond à la fin.
$ Voir http://stackoverflow.com/questions/1435435/another-javascript-regular-expression-problem – Dirk