Partage
  • Partager sur Facebook
  • Partager sur Twitter

Question pour un Régex

    24 février 2006 à 15:30:54

    Bonjour à tous les zéros,

    J'aurais besoin d'un renseignement pour un régex, celui-ci :

    preg_replace('`<<([a-zA-Z0-9\._-])+<<.*>>'([a-zA-Z0-9\._-]+)>>`si', '', $fichier) 


    Comment faire pour préciser dans l'expression régulière que la seconde parenthèse doit être égale à la première ? Est-ce possible ?

    Merci d'avance :) .
    • Partager sur Facebook
    • Partager sur Twitter
      24 février 2006 à 15:38:42

      Bonjour,

      Il faut utiliser la référence arrière \N avec N le "numéro" de la parenthèse ciblée :
      $var = preg_replace('`(ici des trucs...)des autres trucs...\1`isU...', 'remplacement...', $var);

      Note : si tu utilises des guillemets doubles, il faudra utiliser \\N (échapper l'antislash)


      PS : y a un problème dans ton masque, regarde la coloration... ;)
      Edit : oki ^^ pour un tuto assez complet sur les regex : http://www.phpfrance.com/tutoriaux/index.php/2005/04/10/28-les-expressions-regulieres-pcre-ripat
      • Partager sur Facebook
      • Partager sur Twitter
        24 février 2006 à 15:42:41

        Merci beaucoup :) Tu viens de régler un truc que je cherche depuis 30 minutes.

        Pour la coloration, c'est juste que pour la présentation sur le forum, j'ai remplacé les variables par les valeurs, et que comme je l'ai fait vite, je n'ai pas fait attention à enlever un ou deux quotes simples :p
        • Partager sur Facebook
        • Partager sur Twitter

        Question pour un Régex

        × 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