Partage
  • Partager sur Facebook
  • Partager sur Twitter

[JS] probleme avec les balises bbcodes

impossible den inserer plusieur a la fois

Sujet résolu
    2 novembre 2006 à 1:08:28

    bonjour en faite mon pb c'est que quand jessaie de mettre des attributs a mon texte grace aux bbcodes que jai creer il m'est impossible par exemple de mettre une partie du texte en vert par exempl et lautre en rouge (toujour un ex)
    sans que la premiere ne vienne mette tout le texte en vert
    exemple:

    [color=green]blablablablabla bla blablabla blablablablablablabla[/color]

    [color=red]blablablablabla blablablablablablablabl blablablablabla[/color]

    normalement la premiere partie est en vert juske [/color] et lautre en rouge juske lautre [/color] et bien voici réelement ce que ca me donne :

    blablablablabla bla blablabla blablablablablablabla[/color]

    [color=red]blablablablabla blablablablablablablabl blablablablabla


    comment faire pour corriger ce beug
    merci de votre aide
    • Partager sur Facebook
    • Partager sur Twitter
      2 novembre 2006 à 12:02:00

      C'est ce qu'on appele la gourmandises des quantificateurs dans les regex:

      Si on prend la regex: /debut(.*)fin/
      et le texte:
      'debut premier_texte findebut deuxieme texte fin'
      On va récupérer un seul résultat:
      ' premier_texte findebut deuxieme texte '

      Maintenant si on met le symbole ? juste après le * dans l'expression régulière, on anule la gourmandise du symbole :o
      /debut(.*?)fin/
      Va récupérer:
      ' premier_texte ' et ' deuxieme texte '

      Tu as juste à rajouter des '?' après les symboles '*' dans les fonctions remplace_tag du tutoriel.
      • Partager sur Facebook
      • Partager sur Twitter
        2 novembre 2006 à 13:32:07

        c'est a dire ou dois-je placer les ?
        t=remplace_tag(/\[gras\](.+)\[\/gras\]/g,'<span style="font-weight: bold;">$1</span>',t) 
        t=remblaie(t)
        • Partager sur Facebook
        • Partager sur Twitter
          2 novembre 2006 à 14:54:05

          Ah, ici ce n'est pas un * mais un +: donc
          (.+?) au lieu de (.+)
          • Partager sur Facebook
          • Partager sur Twitter
            2 novembre 2006 à 19:29:58

            PB résolu merci a toi et bonne soirée
            • Partager sur Facebook
            • Partager sur Twitter

            [JS] probleme avec les balises bbcodes

            × 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