Autoriser uniquement caractère a à z

  • Auteur de la discussion Auteur de la discussion sff
  • Date de début Date de début
WRInaute impliqué
Bonjour,

Je cherche à autoriser uniquement les caractères a à z (sans MAJ) dans une chaine.

J'ai fais ceci : preg_match("`[a-z]`", $chaine)

Mais ca autoriser pleins de choses tel que les points, les / ...

Pouvez- vous m'aider ?

Merci
 
WRInaute accro
Bonjour,
Code:
preg_match("`[a-z]`", $chaine)
vérifie qu'il y a au moins une lettre dans la chaîne, mais il peut aussi y avoir n'importe quel caractère.

Je ferais plutôt le test contraire
Code:
preg_match("`[^a-z]`", $chaine)
qui sera 0 s'il n'y a que des lettres et 1 dans les autres cas.

Jean-Luc
 
WRInaute accro
"/^[a-z]*$/"

Si tu "n'ancres" pas la regex, il suffit qu'il y ait quelque chose dans la chaîne vérifiée qui corresponde à ce que tu lui demandes pour que ce soit bon. Il faut donc lui dire que tu veux que l'ensemble de la chaîne vérifiée soit correcte en lui disant que ta regex ne correspond que si elle commence au début de ta chaîne (^ au début) et finit à la fin ($ à la fin).

Sinon la méthode par exclusion suggérée par Jean-Luc fonctionne aussi très bien.

Jacques.

(grilled)
 

➡️ Offre MyRankingMetrics ⬅️

pré-audit SEO gratuit avec RM Tech (+ avis d'expert)
coaching offert aux clients (avec Olivier Duffez ou Fabien Faceries)

Voir les détails ici

coaching SEO
Discussions similaires
Haut