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 :

Comment écrire autrement ce code [RegExp]


Sujet :

JavaScript

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    627
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 627
    Points : 118
    Points
    118
    Par défaut Comment écrire autrement ce code
    j'ai ce code qui marche avec la variable reg écrite de cette facon
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var reg = new RegExp('<span class="'+cls+'">([^]+?)<\\/span>',"ig");
    var txt=$(this).val().replace(reg,'$1');
    par contre j'aimerais écrire la variable reg de cette facon et là ca ne marche pas .
    je ne comprends rien
    merci pour votre aide
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    reg='\/<span class="'+cls+'">([^]+?)<\/span>\/ig'
    	  var txt=$(this).val().replace(reg,'$1');

  2. #2
    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 638
    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 638
    Points : 66 668
    Points
    66 668
    Billets dans le blog
    1
    Par défaut
    une reg n'est pas un string ...
    c'est un objet regex

    tu peux la créer de deux façon:
    avec new RegExp
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var reg = new RegExp('<span class="'+cls+'">([^]+?)<\\/span>',"ig");
    avec une notation directe
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var reg = /<span class="truc">([^]+?)<\/span>/ig;
    MAIS si tu veux créer une reg dynamiquement à partir d'une variable, tu ne peux utiliser que la première façon
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Points : 22 933
    Points
    22 933
    Billets dans le blog
    125
    Par défaut
    @SpaceFrog : c'est toi l'expert des regexp, mais je te signale que le vérificateur n'aime pas <\\/span>, il est d'accord pour <\/span> : https://regexper.com/#new%20RegExp%2...%22ig%22%20%29

    Blog

    Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
    (Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    627
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 627
    Points : 118
    Points
    118
    Par défaut
    merci spacefrog .comme ca ca ne marche pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    reg='/<span class="light_2">([^]+?)<\/span>/ig'
    	  var txt=$(this).val().replace(reg,'$1');
    sauf comme çà
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    var txt=$(this).val().replace(/<span class="light_2">([^]+?)<\/span>/ig,'$1');
    pourquoi on ne peut faire la méthode 1

  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 638
    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 638
    Points : 66 668
    Points
    66 668
    Billets dans le blog
    1
    Par défaut
    @Daniel :red: bête copier coller ...

    @bigs
    tu n'as pas bien lu ma réponse ... ce n'est pas un string ... donc pas de ' autour

    là c'est une regexp
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    reg=/<span class="light_2">([^]+?)<\/span>/ig


    là un string
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    reg='/<span class="light_2">([^]+?)<\/span>/ig'
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    627
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 627
    Points : 118
    Points
    118
    Par défaut
    super spacefrog ca marche

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

Discussions similaires

  1. Réponses: 27
    Dernier message: 02/11/2015, 15h55
  2. [PHP 5.2] Comment écrire ce simple code php ?
    Par Jean-Seba dans le forum Langage
    Réponses: 9
    Dernier message: 31/07/2011, 12h06
  3. Réponses: 5
    Dernier message: 08/03/2011, 15h26
  4. Comment écrire un shell qui transforme un code ascii en caractère?
    Par jack-ft dans le forum Shell et commandes GNU
    Réponses: 3
    Dernier message: 21/04/2008, 17h51
  5. [VBA Excel] Comment écrire un code dans le ThisWorkBook ?
    Par WebPac dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 03/05/2005, 15h03

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