Partage
  • Partager sur Facebook
  • Partager sur Twitter

Equivalant Javascript à preg_replace_callback

Sujet résolu
    29 décembre 2009 à 16:09:53

    Bonjour amis Zéros !

    Je recherche un équivalent javascript à la fonction PHP preg_replace_callback.

    En effet je souhaite pour ma prévisualisation traiter une chaine de caractère du type :
    [chessboard]Cb21;Tn74;[/chessboard]


    Ceci devra être remplacer par un tableaux de taille 8x8 (un échiquier) contenant un Cavalier blanc en b1 et une Tour noire en g4.
    • Partager sur Facebook
    • Partager sur Twitter
      29 décembre 2009 à 16:20:17

      Salut,

      Pour la fonction il y a String.replace(), mais il n'y a pas de fonction callback a définir.

      Note : Tu pourrais peut-être faire un for ou un while et appeller une fonction.
      • Partager sur Facebook
      • Partager sur Twitter
        29 décembre 2009 à 16:32:06

        Le problème de string.replace(), c'est qu'il est impossible de mettre une boucle pour créer un array dedans....

        Je réexplique mon problème autrement :

        Comment transformer la chaine de caractère précédente (cf premier post) en un tableau html, de taille 8x8, avec les bonnes pieces aux bon endroits ?

        En php, j'ai réussi grâce à la fonction preg_replace_callback, en extrayant la chaine de caractère entre [chessboard] et [/chessboard] et en la passant par ma moulinette.


        Cependant en JS, je ne trouve pas le moyen d'appliquer une fonction avant de remplacer un élément avec MaStr.replace();
        • Partager sur Facebook
        • Partager sur Twitter
          29 décembre 2009 à 16:34:37

          A grands coups de RegExp.exec() peut-être...

          Ou sinon, si tu veux vraiment parser, tu peux t'aider d'un Tokenizer comme celui-là : http://bit.ly/6pPcaI


          EDIT : replace() peut aussi prendre une fonction en deuxième paramètre hein...
          https://developer.mozilla.org/En/Core_ [...] tring/Replace
          • Partager sur Facebook
          • Partager sur Twitter
            29 décembre 2009 à 16:40:32

            Ok, j'avais penser a mettre une fonction anonyme en deuxième paramètre mais sa ne marchait absolument pas, j'ai du faire une conneries quelque part...

            Sortir la chaine de caractère dans une variable avec exec() me semble plus efficace.

            Merci !
            • Partager sur Facebook
            • Partager sur Twitter

            Equivalant Javascript à preg_replace_callback

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown