Question de regex

Bonjour,

je cherche la formule pour trouver dans une chaine tous les P contenant un simple BR
je sais que mon problème se trouve lorsque j'utilise le .*? car la chaine <p>test</p><p class="toto">test</p><p class="tata"><br></p><p class="titi"><br></p><p class="tutu">test</p><p><br></p> devient un match.
or ce match ne m'intéresse pas

j'utilise /(<p.*?><br><\/p>)/gi

en principe j'aimerai avoir 3 match pour cette chaine :

<p>test</p><p class="toto">test</p><p class="tata"><br></p><p class="titi"><br></p><p class="tutu">test</p><p><br></p><p class="tete">test</p>


je ne suis pas très doué en regex mais je demande qu'à apprendre

2 réponses

  • Votes
  • Date
  • Date décroissante
  1. pffff j'étais sûr qu'en posant la question je trouverais une réponse.
    ma réponse est autre.
    l'utilisation du regex n'est peut-être pas le bon chemin.
    je peux tout simplement rechercher tous les elements <p> avec un .find('p') puis regarder 1 par 1 leur contenu.
    avec cette méthode je me retrouve avec une suite d'objet. ce qui m'offre plus de choix en manipulation par la suite
    1. Modérateur
      Enfin.. la regex que je t'ai donné fait bien ce que tu nous as demandé...