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 :

Fonction replace !


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Directeur technique
    Inscrit en
    Juillet 2007
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 31
    Points : 26
    Points
    26
    Par défaut Fonction replace !
    Salut à tous,

    Alors comme bon nombre de sujets postés a cause de la fonction replace sur internet, d'explications etccc...

    Celui-ci diffère dans le sens ou j'ai tout essayé malgrès les explications... impossible de faire tourner correctement cette fonction :
    Je vous expllique :

    Donc j'ai créé un système de bbcodes sur mon site mais pour éviter tout rechargement de page dans une administration j'ai mit en place un filtrage BBCODES en temps réél.

    Le probleme c'est que je n'arrive pas à placer des /.../g car sur certaines chaine de caractère, un probleme survient et la fonction ne s'applique plus : soit ya une erreur, je vous montre ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    texte = replace(/[b]/g, '<b>');
    texte = replace(/[\/b]/g, '</b>');
    texte = replace(/[u]/g, '<u>');
    replace(/[\/u]/g, '</u>');
     
    texte = replace(/[\/color]/g, '</span>');
    texte = replace(/[\/size]/g, '</span>');
    texte = replace(/[\/font]/g, '</span>');
    texte = replace(/[\/class]/g, '</span>');
    texte = replace(/[\/url]/g, '</a>');
    texte = replace(/]/g, '">');
    Jusqu'ici tous va bien c'est relativement simple mais :

    [CODE]
    texte = replace(/[color=/g, '<span style="color:');
    texte = replace(/[size=/g, '<span style="font-size:');
    texte = replace(/[font=/g, '<span style="font-family:');
    texte = replace(/[class=/g, '<span class="');
    texte = replace(/[url=/g, '<a href="');
    [/CODE]


    Par contre dès que le dernier bout de code s'ajoute boom, la fonction plante !!

    Pourriez vous m'expliquer pouquoi ?

    Merci beacoup

  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 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    as tu essayé ligne par ligne parmi les dernière pour savoir laquelle était fautive ?
    à mon avis un problème de caractère à échapper ...

  3. #3
    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
    Points : 3 239
    Points
    3 239
    Par défaut
    [ doit toujours être précéde de \ si ce n'est pas un "char array". Pareil pour ]. [abc] cela veut dire "a", "b" ou "c".

    Renseigne toi sur les RegExp

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Directeur technique
    Inscrit en
    Juillet 2007
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 31
    Points : 26
    Points
    26
    Par défaut
    Merci pour vos réponse mais je me demandais le signe = ne serrais pas non plus à précéder de \ ?

    Merci !

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 63
    Points : 73
    Points
    73
    Par défaut
    Salut


    La fonction replace sert en général a remplacer dans une variable , par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    var zzz = "zgsz-hghr";
    var texte_sans_tirets = zzz.replace("-","");
    Je ne vois pas ce que ton code fait comme effet , ou alors pour remplacer directement dans la variable ?

    Sinon , je ne vois pas pourquoi ca planterait , pourrais-tu nous donner le dernier morceau de la fonction svp ?

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Directeur technique
    Inscrit en
    Juillet 2007
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 31
    Points : 26
    Points
    26
    Par défaut
    Merci de vos réponse

    Alors j'ai retesté le code avec l'antislashes avant [ ou ] et la fonction marche, Mille Merci !!!

    Donc tu as raisons pourquoi ne marcherait-elle pas maintenant
    Plus rien à dire problème résolu !!

    J'espère que ce post a servit

    @++

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

Discussions similaires

  1. [ODBC] Fonction Replace en ODBC
    Par Alexandre T dans le forum Access
    Réponses: 4
    Dernier message: 10/01/2007, 11h02
  2. Fonction replace
    Par mpat dans le forum ASP
    Réponses: 2
    Dernier message: 30/08/2005, 09h59
  3. Fonction replace
    Par pmboutteau dans le forum ASP
    Réponses: 11
    Dernier message: 10/06/2005, 09h42
  4. PB avec la fonction replace
    Par Techman128 dans le forum C++
    Réponses: 6
    Dernier message: 24/02/2005, 11h39
  5. Fonction replace
    Par PrinceMaster77 dans le forum ASP
    Réponses: 5
    Dernier message: 10/06/2004, 12h18

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