je veux créer une expression régulière qui permettra uniquement des espaces et le nombre ..expression régulière pour le nombre correspondant et des espaces
Et comment puis-je vérifier avec PHP?
je veux créer une expression régulière qui permettra uniquement des espaces et le nombre ..expression régulière pour le nombre correspondant et des espaces
Et comment puis-je vérifier avec PHP?
$pattern = '/^[0-9 ]+$/';
if (preg_match ($pattern, $text))
{
echo 'allowed';
}
Edit:
Si vous souhaitez limiter à 15 caractères (comme vous l'avez mentionné dans un commentaire) vous pouvez utiliser {} pour délimiter une min et une longueur max.
motifdevient:
$pattern = '/^[0-9 ]{1,15}$/';
pour permettre 1 à 15 caractères.
Cela devrait fonctionner:
^[\s\d]*$
Vous devez spécifier probablement si vous voulez « zéro ou plus » ou « un ou plusieurs » espaces. Ce qui précède autorise une chaîne vide pour réussir l'évaluation.
La regex est la suivante.
/^[\d ]+$/i
Pour répondre à la façon dont vous l'exécutez en php, je dois connaître le contexte, avez-vous besoin de fonctionner sur une seule ligne ou entrée multi ligne? en avez-vous besoin pour courir en boucle?
seule ligne seulement environ 15 caractères seulement – Avinash
Celui-ci est exactement comme celui que j'ai posté, mais permet aux chaînes vides de passer, et les tabulations à la place des espaces, si elles se produisent. – DevelopingChris
\ s permet tous les types de caractères, en supposant qu'il ne veut autoriser que 'l'espace' (0x32) ce n'est pas suffisant. –