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 :

Expression réguliere. Supprimer les espaces


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de graphicsxp
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    758
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Luxembourg

    Informations forums :
    Inscription : Avril 2004
    Messages : 758
    Par défaut Expression réguliere. Supprimer les espaces
    Bonjour,
    J'ai une expression reguliere presque correcte. En gros elle doit valider des chaines du type:

    du texte , du texte, du texte ou des chiffres

    par contre mon expression ne fonctionne pas si l'utlisateur rentre :

    du texte, , du texte ou des chiffres

    car les espace sont autorisés.

    Donc comment autoriser les espaces, mais dans le cas ou il n'y pas de charateres dans l'une des 3 chaines, ne pas valider la chaine.

    Voici a quoi elle ressemble pour l'instant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /^([a-z\s]+,){2}[a-z0-9\s]+$/i

  2. #2
    Membre Expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Par défaut
    Peut-être que faire un split par "," avant permet de mieux analyser

  3. #3
    Membre éprouvé Avatar de graphicsxp
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    758
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Luxembourg

    Informations forums :
    Inscription : Avril 2004
    Messages : 758
    Par défaut
    Non je dois analyser la chaine entiere sans faire de split. Les expressions régulieres sont stockées dans une base de données et je ne veux pas avoir de code modifiant la chaine coté client. Donc il faut que je résoude ce probleme en trouvant la bonne expression

  4. #4
    Membre Expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Par défaut
    Rien ne t'empeche de créer une variable temporaire pour faire ta validation
    Ou de faire une fonction (qui ne changera pas la valeur)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    validateStr=function(Str) {
        //
        var S = Str.split(" ")
        var ok=true;
        for (var i=0; i<S.length; i++) {
            ok=ok && validateStrPart(S[i], i, S.length, Str)
        }
        return ok;
    }
     
    validateStrPart(Str, Index, Length, Total) {
       // Validation personalisée ici
       return true
    }

  5. #5
    Membre éprouvé Avatar de graphicsxp
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    758
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Luxembourg

    Informations forums :
    Inscription : Avril 2004
    Messages : 758
    Par défaut
    Non comme je l'ais dis les expressions sont stockées dans une base de donées.
    Mes chaines peuvent etre tres différentes les unes des autres, donc ca ne sert a rien d'avoir du code coté client. Ma chaine pourrais tres bien etre tres différente de l'exemple que j'ai donnée.
    Cette expression est une parmis d'autres stockées dans la base, et celle-là me pose probleme. Il doit bien y avoir un moyen de vérifier s'il ya au moins un charactere entre les virgules ?

    EDIT

    arf d'ailleurs je viens de trouver....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     ^(\s*([a-z]+\s*)+,){2}\s*([a-z0-9]+\s*)+$/i

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

Discussions similaires

  1. Réponses: 9
    Dernier message: 06/11/2007, 12h36
  2. Réponses: 9
    Dernier message: 27/10/2005, 13h20
  3. [DEBUTANT]Supprimer les espaces pour une requete
    Par tripper.dim dans le forum Oracle
    Réponses: 4
    Dernier message: 12/10/2005, 16h04
  4. Supprimer les espaces
    Par jmde dans le forum Access
    Réponses: 16
    Dernier message: 24/09/2005, 22h40
  5. Supprimer les espaces des noms de fichier
    Par Cathy dans le forum Linux
    Réponses: 20
    Dernier message: 04/08/2005, 17h13

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