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 :

[Debutant] Pb sur les string


Sujet :

JavaScript

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 63
    Points : 46
    Points
    46
    Par défaut [Debutant] Pb sur les string
    Bonjour alors dans mon code ci dessous je fais des opérations sur String seulement Ma variable Chaine ne vaut rien ( erreur Chaine has no properties) seulement quand ej remplace Valeur dans expr apr ce que ca vaut ben là ca marche je comprends rien!! si vous avez une soluce Merci d'avance!!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    var Valeur = new String(found[1]+"~"+found[4]+"~"+found[5]+"~")
    var expr = /(.*)?(Valeur)(\w+)(.*)/;
    var Chaine = Liste.match(expr);

  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 640
    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 640
    Points : 66 672
    Points
    66 672
    Billets dans le blog
    1
    Par défaut
    c'est quoi Liste ?
    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
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 63
    Points : 46
    Points
    46
    Par défaut
    Ben Liste c'est une String

  4. #4
    En attente de confirmation mail Avatar de fred777888999
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    250
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 250
    Points : 292
    Points
    292
    Par défaut
    Ben c plutot normal, tu construit ton expression de recherche avaec la chaine de caracteres Valeur et non pas ce qu'il y a dans ta variable '
    Valeur.
    Avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var Valeur = new String(found[1]+"~"+found[4]+"~"+found[5]+"~");
    var expr = "(.*)?(" + Valeur + ")(\w+)(.*)/";
    var Chaine = Liste.match(expr);
    meme si c'est moins joli, ca devrait passer
    ++
    Fred.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 63
    Points : 46
    Points
    46
    Par défaut
    Ben DSL mais ca marche pas du tout j'ai aussi essayé ca

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    var expr = new RegExp('(.*)?('+Valeur+')(\w+)(.*)');
    Et que dalle toujours la même erreur Chaine has no properties!!!

  6. #6
    En attente de confirmation mail Avatar de fred777888999
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    250
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 250
    Points : 292
    Points
    292
    Par défaut
    Ben vi, c'est a ton expression (qui etait mal definie) que la methode match devrait etre apellee dans ton code, pas a liste qui est d'ailleurs definie je ne sais ou comme te le faisait remarquer la grenouille...
    ++
    Fred.

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 63
    Points : 46
    Points
    46
    Par défaut
    Citation Envoyé par fred777888999
    Ben vi, c'est a ton expression (qui etait mal definie) que la methode match devrait etre apellee dans ton code, pas a liste qui est d'ailleurs definie je ne sais ou comme te le faisait remarquer la grenouille...
    ++
    Fred.
    Je m'excuse mais j'ais pas tout compris!! Si je comprend bien tu dis que la méthode match doit être appellé par mon expression et non par ma variable liste ??? Alors Le seul truc que je comprends pas dans ce cas c'est pourquoi quand je remplace Valeur par ce qu'il vaut vraiment dans mon expr ben ca marche ??

    et de plus j'ai essayé ca aussi qui ne marche d'ailleurs pas mieux
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    	var Chaine = expr.exec(Liste);

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 63
    Points : 46
    Points
    46
    Par défaut
    et voilà un peu plus de code pour mieux comprendre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    new_row_button.onclick= function(){
    var Liste = new String(document.Form0.Liste.value);		
    var Code = new String(this.parentNode.innerHTML);
    var expr2 = /([0-9]+)\s(\w+)\s(\w+)\s(\w+)\s(\w+)/;
    var found = Code.match(expr2);
    var Valeur = new String(found[1]+"~"+found[4]+"~"+found[5]+"~");
    var expr = new RegExp('(.*)?('+found[1]+"~"+found[4]+"~"+found[5]+"~"+')(\w+)(.*)');
    //var expr = "/(.*)?("+Valeur+")(\w+)(.*)/";
    var Chaine = expr.exec(Liste);
    //var Chaine = Liste.match(expr);
    document.Form0.Liste.value = Chaine[1] + Chaine[4];}

  9. #9
    En attente de confirmation mail Avatar de fred777888999
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    250
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 250
    Points : 292
    Points
    292
    Par défaut
    Ah non, j'ai confondu exec et match... Tu devrait quand meme nous donner le bout de code ou Liste est defini, ca simplifierai les choses car juste avec ce bout de code, meme si ca ne fait rien chez moi (et pour cause, les vars sont non initialisees), je n'ai aucune erreur.

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 63
    Points : 46
    Points
    46
    Par défaut
    ben a y es je crois que tu as tout ce qu'il faut!!!
    tu peux initialiser Liste avec ="78~AZ~AZ~LS~75~QS~QS~LS~"
    et mettre dans Valeur ="75~QS~QS~"
    le but étant d'obtenir une chaine qui vaut "78~AZ~AZ~LS~" et ce aprés mes différents matchs!!

    Merci de ton aide en tout cas!!

  11. #11
    En attente de confirmation mail Avatar de fred777888999
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    250
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 250
    Points : 292
    Points
    292
    Par défaut
    Pas compris pourquoi tu utilise match pour faire un replace alors....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <script type="text/javascript">
    Liste="78~AZ~AZ~LS~75~QS~QS~LS~";
    Valeur ="75~QS~QS~";
    alert(Liste.replace(Valeur,"")); 
    </script>
    C bon ?
    ++
    Fred.

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 63
    Points : 46
    Points
    46
    Par défaut
    Ben non j'ai pas d'erreur mais le replace remplace que dalle!! Ma valeur ne change pas je vais essayer juste avec le petit bout de code que tu as mis!!

    Non je m'étais planté donc ca ca marche seulement il me laisse à la fin le LS et j'en veux pas le match me permettait justement de pas avoir à rajouter LS dans ma chaine cherché car retrouvé le LS c chiant!!

  13. #13
    En attente de confirmation mail Avatar de fred777888999
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    250
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 250
    Points : 292
    Points
    292
    Par défaut
    Le replace ne remplace pas dans la chaine que tu lui passe en parametre, mais retourne une chaine avec les valeurs remplacees. Pour avoir le resultat de l'alert dans liste, il suffit de le mettre...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Liste = Liste.replace....
    match pour ca part n'effectue aucun remplacement, mais juste une recherche, il renvoie un booleen comme le confirme la doc sur le Javascript.
    Explique ce que tu veux faire avec ta regexp si tu ne trouve pas la reponse dans la doc car comprendre a la fois les erreurs de code et ce que tu veux obtenir n'est pas simple du tout
    ++
    Fred.

  14. #14
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 63
    Points : 46
    Points
    46
    Par défaut
    bon ben merci j'ai donc utilisé quand même le replace et là pas de souci ca marche encore merci pour ton aide!!!

  15. #15
    En attente de confirmation mail Avatar de fred777888999
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    250
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 250
    Points : 292
    Points
    292
    Par défaut
    NP
    bon courage et bonne continuation.
    Fred

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

Discussions similaires

  1. [Debutant] condition sur les champs
    Par nadhem dans le forum JDBC
    Réponses: 6
    Dernier message: 24/07/2006, 12h01
  2. [debutant]Question sur les Jpanels
    Par mikedavem dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 09/05/2006, 14h38
  3. [debutant] Question sur les données.
    Par Norabfr dans le forum Débuter
    Réponses: 4
    Dernier message: 03/01/2006, 13h47
  4. Pb sur les String entre navigateurs
    Par chpog dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 20/09/2005, 10h59
  5. Realiser des tests exhaustifs sur les String
    Par Sarrus dans le forum Langage
    Réponses: 9
    Dernier message: 07/07/2005, 11h52

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