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 :

Problème avec une RegEx


Sujet :

JavaScript

  1. #1
    Membre éclairé Avatar de Death83
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 667
    Points : 878
    Points
    878
    Par défaut Problème avec une RegEx
    Salut a tous,

    J'ai un petit soucis avec une expression réguliere en fait j'ai une regex qui dit un truc comme ca:

    replace('<span>.*value="22".*</span>','');

    je veut donc suprimer les <span> contenant value=22 (c'est un exemple).

    Le probleme est que si j'ai d'autres </span> apres, il va prendre le derniers (en effet tout les autres sont assimilé dans .* alors que je veut qu'il s'arrete au premiere qu'il rencontre. En php j'utilisait les flag SU pour éviter ca mais comment dois-je faire en javascript pour remédier à ca ?
    manganimes (en construction) -
    zemanga

  2. #2
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 681
    Points : 5 221
    Points
    5 221
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    chaine.replace(/<span>[^<]*value="22"[^<]*<\/span>/gi,"");

  3. #3
    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 637
    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 637
    Points : 66 662
    Points
    66 662
    Billets dans le blog
    1
    Par défaut
    et ça s'appelle "regulière" ?
    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 !

  4. #4
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 681
    Points : 5 221
    Points
    5 221
    Par défaut
    non: en fait "rationnelle"...

    ça laisse songeur, c'est vrai

  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 637
    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 637
    Points : 66 662
    Points
    66 662
    Billets dans le blog
    1
    Par défaut
    la perche était bien tendue
    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 éclairé Avatar de Death83
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 667
    Points : 878
    Points
    878
    Par défaut
    Citation Envoyé par javatwister
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    chaine.replace(/<span>[^<]*value="22"[^<]*<\/span>/gi,"");
    Merci,
    a oui j'avais pas pensé a dire tout sauf <.
    je vais essayer ca se soir

    Sinon c'est quoi la différence entre Expressions régulières et expression rationnelles?
    manganimes (en construction) -
    zemanga

  7. #7
    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 637
    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 637
    Points : 66 662
    Points
    66 662
    Billets dans le blog
    1
    Par défaut
    regulière est un abus de langage ...
    officiellement c'est rationnelle
    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 !

  8. #8
    Membre éclairé Avatar de Death83
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 667
    Points : 878
    Points
    878
    Par défaut
    Citation Envoyé par SpaceFrog
    regulière est un abus de langage ...
    officiellement c'est rationnelle
    Oki
    manganimes (en construction) -
    zemanga

  9. #9
    Membre éclairé Avatar de Death83
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 667
    Points : 878
    Points
    878
    Par défaut
    En faite ca ne convient pas tout à fait a mon cas.
    Il est possible qu'il y ait des < entre les 2 span que je veut enlever.

    il fautdrait que je dise tout sauf </span>.

    Comment écrire ca?

    je sais que comme ca: [^</span>] ca ne marche pas car pour lui c'est tout sauf < ou / ou s ..... et non pas le mot entier.

    Comment faut-il faire?
    manganimes (en construction) -
    zemanga

  10. #10
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 681
    Points : 5 221
    Points
    5 221
    Par défaut
    eh oui...

    déjà, tu modifies du html à l'arrache (innerHTML);
    mais si en plus tu mets des balises dans des span ... là, on ne peut plus faire grand chose!

  11. #11
    Membre éclairé Avatar de Death83
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 667
    Points : 878
    Points
    878
    Par défaut
    Citation Envoyé par javatwister
    eh oui...

    déjà, tu modifies du html à l'arrache (innerHTML);
    mais si en plus tu mets des balises dans des span ... là, on ne peut plus faire grand chose!
    En fait il n'ay a pas de balise dans les span. Mes lignes sont comme ca (la je donnais juste un exemple):

    <span>titre</span><input value="22" ...></intput><button ... </button><br>
    <span>titre</span><input value="23" ...></intput><button ... </button><br>
    <span>titre</span><input value="24" ...></intput><button ... </button><br>

    Et ce que je veut faire c'est enlever uniquement la ligne correspondant au bouton





    En faite c'est une sorte de formulaire dynamique. J'ai un tableau avec un bouton ajouter qui permet de selectionner des donnée en temps réelles. (donc pas de liens jsute des evenement js. Et en fait la je fait le bouton qui me permet de les retirers. Donc pour ca j'enleve la ligne qui contient l'idée que je veut enlever.

    Mais c'est pas facile a faire . Va falloir que je réfléchisse un peu et que je trouve une astuce . (a moi que vous en ayez deja une .)
    manganimes (en construction) -
    zemanga

  12. #12
    Membre éclairé Avatar de Death83
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 667
    Points : 878
    Points
    878
    Par défaut
    Donc si je comprend bien ca c'est possible en php mais apparement il n'y a pas les flag qui le permettent en javascript?
    manganimes (en construction) -
    zemanga

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

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 239
    Points
    3 239
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    var arr = DIV.getElementsByTagName("input");
    var arr2 = {};
    for (var i=0; i<arr.length; i++) {
       if (arr[i].value == "22") {arr2[arr2.length] = arr[i];}
    }
    for (var i=0; i<arr2.length; i++) {
      // Action
      // Exemple :
      arr2[i].parentNode.removeChild(arr2[i]);
    }
    ?
    Fremy
    Pour vos développements Web et une navigation agréable, le tout gratuit :
    1) IE 8 + IE7Pro (Si vous ne connaissez pas IE7Pro, essayez !)
    2) FF 3 + Web Developper Toolbar + AdBlockPlus + FireBug + GreaseMonkey

Discussions similaires

  1. [C#] Problème avec une regex (assez) simple
    Par Reminouche dans le forum Débuter
    Réponses: 5
    Dernier message: 17/09/2013, 17h38
  2. [C#][Regex] Problème avec une regex
    Par Reward dans le forum C#
    Réponses: 2
    Dernier message: 15/01/2009, 15h27
  3. [c# REGEX]Problème avec une expression régulière
    Par mezzo_998 dans le forum Windows Forms
    Réponses: 5
    Dernier message: 24/11/2007, 13h03
  4. [RegEx] problème avec une regex
    Par lanfeust42 dans le forum Langage
    Réponses: 2
    Dernier message: 19/09/2006, 08h48
  5. [RegEx] Problème avec une ReGex
    Par Death83 dans le forum Langage
    Réponses: 9
    Dernier message: 27/07/2006, 21h27

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