Bonjour,
contenant uniquement une image!
Ça appelle immédiatement une assertion en avant (?= )
Je débouche sur ceci:
"<a(?: target=.+?)?\s+(?:href=([\"'])([:/\w'\"\.]+?)\\1).*?>(?=<img.+?></a>)"
Je crois qu'en PHP il faut rajouter # en position 1 et -2 du masque, je ne sais pas pourquoi.
Excusez moi, mais je ne suis pas encore très à l’aise avec les regex en PHP, alors j’ai écrit cette RE telle que je l’ai faite en Python.
Je pense que vous arriverez à vous en débrouiller.
D’ailleurs ce n’est peut être pas toujours href et target qui se trouvent dans la chaîne à exploiter, vous modifierez.
J’ai mis aussi [:/\w'\"\.] comme caractère possible répétable de l’adresse. C’est peut ètre inutile et un point irait aussi bien.
La portion ([\"']) est obligatoirement capturante pour pouvoir être rappelée en clôture de href par \\1
J’écris \\1 , je préfère à une raw string dans laquelle on pourrait mettre \1
Partager