Bonjour,

Je dispose d'une liste d'articles qui se présente ainsi :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
{articles 05,29,10,12} {articles 04,57,20,15} texte divers texte divers qsdf sqdf qsdf 
{articles 38,06,17,02} {articles 11,27,42,22} {articles 80,73,46,65} texte divers texte divers qsdf sqdf qsdf 
{articles 18,07,01,18} texte divers texte divers qsdf sqdf qsdf 
{articles 45,11,10,03} {articles 03,21,50,12} {articles 15,08,14,02} texte divers texte divers qsdf sqdf qsdf 
etc...
Comme vous le voyez, la liste consiste en une ou plusieurs famille(s) de 4 articles, suivie(s) d'un texte descriptif.
Je souhaiterais, pour chaque ligne, conserver seulement la dernière famille d'articles et le texte descriptif, ce qui donnerait pour l'exemple ci-dessus :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
{articles 04,57,20,15} texte divers texte divers qsdf sqdf qsdf 
{articles 80,73,46,65} texte divers texte divers qsdf sqdf qsdf 
{articles 18,07,01,18} texte divers texte divers qsdf sqdf qsdf 
{articles 15,08,14,02} texte divers texte divers qsdf sqdf qsdf

Je me dis que la solution doit être quelque chose comme :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
$ligne = preg_replace('#(\{articles (\d\d),(\d\d),(\d\d),(\d\d)\}){2,}(.*?)#si', '$1.$6', $ligne);
Mais je n'arrive pas à trouver la syntaxe exacte.
Quelqu'un peut-il m'aider ?

Merci d'avance