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 :

RegExp autorisant l'espace


Sujet :

JavaScript

  1. #1
    Membre actif
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Janvier 2010
    Messages : 389
    Points : 214
    Points
    214
    Par défaut RegExp autorisant l'espace
    Bonjour,

    Avec cette RegExp, j'autorise certains caractères dans un champ input :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    var caracteres = new RegExp("[0-9a-zA-Z\s-àâäãçéèêëìîïòôöõùûüñ'-]");
    Cela fonctionne pour tous les caractères sauf pour l'espace. Voyez-vous ce qui cloche ? (la coloration syntaxique suggère un problème au niveau du \s). Merci.

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    802
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 802
    Points : 653
    Points
    653
    Par défaut
    Je pense qu'il faut échapper le backslash :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    var caracteres = new RegExp("[0-9a-zA-Z\\s-àâäãçéèêëìîïòôöõùûüñ'-]");

  3. #3
    Membre actif
    Homme Profil pro
    Inscrit en
    Janvier 2010
    Messages
    389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Janvier 2010
    Messages : 389
    Points : 214
    Points
    214
    Par défaut
    Merci beaucoup, il fallait effectivement échapper le backslash. Merci

  4. #4
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Citation Envoyé par verbose
    Je pense qu'il faut échapper le backslash
    Tout à fait, ceci dit, le mieux est d'utiliser une forme littérale au lieu du constructeur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var caracteres = /[0-9a-zA-Z\s-àâäãçéèêëìîïòôöõùûüñ'-]/;
    A noter aussi que \s ne représente pas uniquement un espace mais tout caractère d'espacement (par exemple une tabulation).

  5. #5
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 644
    Points : 66 671
    Points
    66 671
    Billets dans le blog
    1
    Par défaut
    le plus simple est encore de mettre un espace dans la classe ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    var caracteres = new RegExp("[0-9a-zA-Z -àâäãçéèêëìîïòôöõùûüñ'-]");
    //ou
    var caracteres = /[0-9a-zA-Z -àâäãçéèêëìîïòôöõùûüñ'-]/;
    à noter que l'on est sur un range entre espace et à

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

Discussions similaires

  1. [RegExp] Autoriser des espaces et un plus
    Par stitox dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 21/01/2011, 19h52
  2. [XSD] patern pour autoriser les espaces
    Par sosan dans le forum Valider
    Réponses: 0
    Dernier message: 07/10/2010, 12h09
  3. [MySQL] autoriser des espaces dans une variable
    Par khamett dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 15/10/2007, 13h13
  4. [RegExp]Split chaîne par espaces sauf ceux entre guillemets ?
    Par Loic Desjardins dans le forum Langage
    Réponses: 2
    Dernier message: 17/11/2006, 11h33
  5. Regexp de suppression d'espaces en début de ligne
    Par batmatm dans le forum Langage
    Réponses: 4
    Dernier message: 20/10/2005, 16h25

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