Les expressions régulières sont un outil technique qui permet de contrôler le format des données renseignées dans les champs de formulaire (par exemple le numéro de téléphone ou l'email). Elles donnent de grandes possibilités de contrôle mais doivent être rédigées avec beaucoup d'attention.
Elles ne remplacent pas la validation des données mais peuvent permettre d'éviter la soumission d'informations inutilisables.
Lors du paramétrage d’un formulaire, il est maintenant possible d’ajouter une expression régulière sur les champs afin de forcer un format précis en autorisant uniquement certains caractères ou en limitant le nombre de caractères disponibles.
Nous vous proposons ici quelques exemples. Ceux-ci sont entièrement adaptables aux différents besoins selon les champs :
Numéros de téléphone :
Test d’un numéro de mobile Français (06/07/+336/+337/00336/00337) prenant en compte plusieurs types d'indicatifs.
^(\+33|0033|0)(6|7)[0-9]{8}$
Vous pouvez bien sûr adapter cette expression régulière pour d'autre pays (comme la Belgique par exemple avec +32/0032)
^(\+32|0032|0)[0-9]{8}$
Test d’un numéro de téléphone Français de 10 caractères sans les indicatifs internationaux.
^(0)([1-9])[0-9]{8}$
Emails :
Test d’un email valide avec alias google (+). L'alias Google permet aux utilisateurs d'utiliser plusieurs adresses emails qui sont redirigées vers la même adresse unique (ex : rjoan@cassiop.com et rjoan+1@cassiop.com)
^([a-zA-Z0-9\.\+]+)@((?:[\w]+\.)+)([a-zA-Z]{2,4})$
Test d’un email valide SANS alias google (+)
^([a-zA-Z0-9\.]+)@((?:[\w]+\.)+)([a-zA-Z]{2,4})$
Test d’un email en forcant un domaine (google.com OU google.fr dans ce cas)
^([a-zA-Z0-9\.]+)@(google.com|google.fr)$
Textes libres :
Test d’un texte d’au moins 5 caractères (A-Z 0-9) sans caractères spéciaux
^([a-zA-Z0-9\.]){5,}$
Test d’un texte de 5 caractères (A-Z 0-9) AVEC DES CARACTÈRES SPÉCIAUX autorisés
^([a-zA-Z0-9àáâãäåçèéêëìíîïðòóôõöùúûüýÿ\.]){5}$
Test d’un texte fixe. Cette expression régulière va forcer l'utilisateur à remplir un texte spécifique : "TOTAL" ou "total" dans l’exemple suivant
^(TOTAL|total)$
Test d’un texte commençant par ABC et suivi de chiffres. Le texte “ABC” est entièrement modifiable selon vos besoins
^ABC-([0-9])+$
Test d’un texte commençant par 123 et suivi de lettres
^123-([a-zA-Z])+$
Dates :
Test simple d’une date de naissance au format DD/MM/YYYY que vous pouvez utiliser dans un champ libre
^(0?\d|[12]\d|3[01])\/(0?\d|1[012])\/((?:19|20)\d{2})$
Adresse postale :
Test d'une adresse postale sans les caractères spéciaux. Cette expression régulière va empêcher l'écriture de caractères spéciaux dans une adresse postale
^[a-zA-Z0-9àáâãäåçèéêëìíîïðòóôõöùúûüýÿ\s,'.°-]*$
Si vous souhaitez aller plus loin, https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql/916990-les-expressions-regulieres-partie-1-2
Si vous avez besoin d’aide pour la rédaction de vos expressions régulières, nous vous invitons à contacter le support Kimple ou votre chef de projet