IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Les expressions régulières


Sujet :

JavaScript

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 72
    Par défaut Les expressions régulières
    J'ai essayer de faire un teste mais ne marche, pas voila mon code :

    fichier JS
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    var champ1 =document.getElementById("txt1").value;
    var champ2 =document.getElementById("txt2").value;
    var champ3 =document.getElementById("txt3").value;
    var Liste = new Array(champ1,champ2,champ3);
    var message = new Array("txt1","txt2","txt3");
     
    //ce variable pour faire un teste sur la présence de : -- 
    var regexp =/\-{2}/g;
    for(i=0;i<Liste.lenght;i++)
    {
      var resu = Liste[i].match(regexp);
     
        if(Liste[i]!="")
           {
               if(Liste[i]!=parseInt(Liste[i]) && Liste[i]!=parseFloat(Liste[i])) 
                  {
                      alert("Le champs :" + message[i] + " est Incorricte\nVeuillez entre un chiffre");
                      return(false);
                  }
          }
     
        if(resu == true)
        {return(true);}
    }
    mais le teste sur l'expression régulière ne marche pas!!

  2. #2
    Expert confirmé
    Avatar de Auteur
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    7 660
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 7 660
    Par défaut
    bonjour,

    je crois que tu confonds test() et match(). test() est une méthode de l'objet RegExp et renvoit un booléen, match() est une méthode sur l'objet string et renvoit une chaine de caractères :

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
     
    var champ1 = document.getElementById("txt1").value;
    var champ2 = document.getElementById("txt2").value;
    var champ3 = document.getElementById("txt3").value;
    var Liste = new Array(champ1,champ2,champ3);
    var message = new Array("txt1","txt2","txt3");
     
    //ce variable pour faire un teste sur la présence de : -- 
    var reg = /\-{2}/g;
    var resu, i;
     
    for(i=0;i<Liste.length;i++)
    {
        resu = reg.test(Liste[i]);
     
        if(Liste[i]!="")
           {
               if(Liste[i]!=parseInt(Liste[i]) && Liste[i]!=parseFloat(Liste[i])) 
                  {
                      alert("Le champs :" + message[i] + " est Incorricte\nVeuillez entre un chiffre");
                      return(false);
                  }
          }
     
        reg.test("");  // reinitialisation du compteur lastIndex de Firefox
        if(resu == true)
        {
            return(true);
        }
     
    }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VB.net][vs2005] Problème avec les expressions régulières
    Par zouhib dans le forum Windows Forms
    Réponses: 13
    Dernier message: 22/06/2006, 15h56
  2. Problème avec les expressions régulières
    Par Premium dans le forum Collection et Stream
    Réponses: 11
    Dernier message: 18/06/2006, 16h41
  3. Les Expressions Régulières
    Par zEndymion dans le forum Access
    Réponses: 4
    Dernier message: 12/06/2006, 13h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo