Expréssion réguliéres

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Expréssion réguliéres

Re: Expréssion réguliéres

par Fre3z69 » 20 janv. 2012, 14:55

j'ai trouver à force de chercher sur le net et de moduler les expressions.

C peux être simplifiable, en tout cas ta réponse "sirakawa" m'a lancer sur la voie.

Voici ce que j'ai fait: /^(?=.*[A-Z]{1,})(?=.*[a-z]{1,})(?=.*[0-9]{1,})+[a-zA-Z0-9]+$/

Merci de votre aide, et si on peux améliorer ceci, je suis preneur ^^

Cordialement

Re: Expréssion réguliéres

par Fre3z69 » 20 janv. 2012, 13:32

merci, mais j'ai besoin d'une expression régulière fonctionnant en php comment en js, je me vois mal faire ça en js ^^.

Plus dans l’exemple que j'ai montré plus haut

Merci de votre aide

Re: Expréssion réguliéres

par sirakawa » 20 janv. 2012, 13:12

C'est tout bête, pas beau, mais opérationnel.
<?PHP
$masque = "/[a-z]?/";
$passe = "totoA1";
$res = preg_match($masque, $passe);
$masque_1 = "/[A-Z]/";
$res1= preg_match($masque_1, $passe);
$masque_2 =  "/[0-9]/";
$res2= preg_match($masque_2, $passe);
$res = (($res >0) and ( $res1 > 0) and ( $res2 > 0));
if ($res)
{
print "ok";
}
else
{
 print"ko";
}
?>

Expréssion réguliéres

par Fre3z69 » 20 janv. 2012, 12:29

Salutation

Je cherche un moyen de vérifier mon mot de passe en expression régulière

J'ai besoin que le mot de passe contiens obligatoirement, des Majuscules, des minuscules et des nombre sans aucuns caractéres spéciaux et sans compter le nombre minimum ou maximal de la chaine (je vérifie ce la à coté pour afficher un message plus clair

Voici mon exemple actuel.
(c du Jquery, mais je cherche surtout ça pour le php).

Code : Tout sélectionner

$("#password").keyup(function(){ if(($("#password").val().length < 6)||($("#password").val().length > 20)){ $("#password").next(".error-message").fadeIn().text("Le mot de passe doit être compris entre 6 et 20 caractères."); $("#password").css("border-color","#b60c00"); } else if(!$("#password").val().match(/^ *** MA REGEX ????? ***/)){ $("#password").next(".error-message").fadeIn().text("Le mot de passe doit contenir des lettres en majuscules et en minuscules et des nombres."); $("#password").css("border-color","#b60c00"); } else{ $("#password").next(".error-message").hide().text(""); $("#password").css("border-color","#70bf70"); } });
j'ai tester #/^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9]).*$/# mais ça prend en compte n'importe quel caractères une fois les obligation requise (Maj+min+chiffre), hors je ne souhaite pas avoir de cratères spéciaux.

Le fonctionnement en php est exactement similaire, je vérifie que mon pass est soit plus grand que 6 soit plus petit que 20, et ensuite j'applique la regex.
Sachant que je n'est pas encore fait cela en php, je ne peux vous montrer ce code

Quoi qu'il en soit, ici le problème est lié au php, et n'est que pour les regex.

Merci de votre aide

Cordialement