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 :

mettre une fonction dans une regex


Sujet :

JavaScript

  1. #1
    Membre chevronné Avatar de IP-Fix
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    421
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 421
    Par défaut mettre une fonction dans une regex
    Bonjour à tous , voici mon probleme , j'ai une prev en direct pour un forum , tout est nickel , sauf la balise code , j'ai fait ma fonction qui vire les smiley dedans , colorie , etc .. mais je sais pas comment l'utiliser dans une regex :

    Là il prend la chaine text.. (en php ça marche)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    data = data.replace(/\[code\]([\s\S]*?)\[\/code\]/g, 'Code($1)');
    //Code(valeur)
    Là il prend '$1' et pas la valeur de la premiere parenthese :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    data = data.replace(/\[code\]([\s\S]*?)\[\/code\]/g, Code('$1'));
    //fonction Code sur '$1'
    Là il croit que $1 est une variable :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    data = data.replace(/\[code\]([\s\S]*?)\[\/code\]/g, Code($1));
    //plantouille la variable $1 n'existant pas
    donc je vois pas trop la finte :/

  2. #2
    Membre expérimenté
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    161
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 161
    Par défaut
    Tu peux pas faire ça directement comme en php (malheureusement)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    data = data.replace(/\[code\]([\s\S]*?)\[\/code\]/g, 'Code($1)');
    Tu dois extraire toutes les paires de balise code (avec match()) puis les passer a la fonction Code() et puis les réinsérer.

  3. #3
    Membre chevronné Avatar de IP-Fix
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    421
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 421
    Par défaut
    Ouais c'est ce que je comptais faire de toute , mais grmbl !

    merci quand meme.

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

Discussions similaires

  1. Appel d'une fonction dans une fonction d'une même classe
    Par script73 dans le forum Général Python
    Réponses: 3
    Dernier message: 06/03/2015, 10h18
  2. Mettre le résultat d'une fonction dans une cellule
    Par voxov dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 28/06/2012, 12h30
  3. portée d'une variable dans une fonction dans une méthode
    Par laurentg2003 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 29/06/2009, 19h05
  4. Mettre le return d'une fonction dans une balise input
    Par khaled.mann dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 21/04/2009, 06h55
  5. [POO] dans une classe, appeler une fonction dans une méthode
    Par arnaudperfect dans le forum Langage
    Réponses: 3
    Dernier message: 26/08/2007, 23h04

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