Comment vérifier si une chaîne contient uniquement des chiffres et des espaces à l'aide de RegEx? P>
I.e. p>
assez lâche, mais cela répond à mes besoins. P>
suggestions? P>
4 Réponses :
quelque chose comme:
Cela ne permet pas aux lettres aussi?
@Marko Vous pouvez utiliser un testeur de regex comme celui-ci pour le tester. :) Regexlib.com/reter.aspx
@Fuji, j'ai fait (celui-ci régulier-expressions.info/javascriptexample.html ) et mettre "Asdasd" revient comme le succès.
Cela correspondra toujours à n'importe quelle chaîne. \ d * code> correspond à "zéro ou plusieurs chiffres", et chaque chaîne a nul ou plus de chiffres.
@Marko, il ressemble en effet à celui-ci ne fonctionne pas parfaitement. :)
@Marko, vrai. HMMM, je ne peux pas sembler forcer une non-correspondance ici, tester dans Expresso.
Comment sur / ^ [\ d] + $ / code>? S'il doit démarrer et se terminer par un chiffre, / ^ \ d [\ d] * \ d $ / code> devrait le faire. P>
Cela me manque avec des chiffres. Je suis juste testant avec "012 323 2313" ici régulier-expressions.info/javascriptexample.html < / a>
@Marko, n'incluez pas le / 's si vous utilisez ce testeur. Il suffit de mettre le texte ^ [\ d] + $
@Marko: Avez-vous supprimé le "code> / code>? Ce ne sont que des délimiteurs de regex. Essayez la chaîne ^ \ d [\ d] * \ d $ code> et vous verrez qu'il correspond à 012 323 2313 Code> Tout simplement bien.
[0-9] code> <- Cela signifie un seul chiffre entre 0 et 9 li>
-
[0-9] code> <- Cela signifie tout chiffre entre 0 et 9, ou un espace li>
-
[0-9] {1,} code> <- Cela signifie tout chiffre entre 0 et 9, ou un espace, 1 ou plusieurs fois li>
-
[0-9] {1,9} code> <- Cela signifie tout chiffre entre 0 et 9, ou un espace, 1 à 9 fois li>
ul> n em> de chiffres avec n'importe quel nombre d'espaces: ici n = 11;
Test: ici P> P>
Bien sûr, les numéros de téléphone peuvent être exprimés sous forme de lettres (1-800-fleurs ou contacts ou autre)
@RYBER: C'est pour les utilisateurs numéros de téléphone cellulaire (format néo-zélandais)