$re = '/<figure[^>]*>([\t\n\r\s]*)<figcaption[^>]*>(.*)<\/figcaption>([\t\n\r\s]*)<audio[^>]*>(([\t\n\r\s]|.)*)<\/audio>([\t\n\r\s]*)<\/figure>/m';
$str = '<!-- Une simple image -->
<figure>
<img
src="https://developer.mozilla.org/static/img/favicon144.png"
alt="Le logo de MDN.">
</figure>
<!-- Une image avec une légende -->
<figure>
<img
src="https://developer.mozilla.org/static/img/favicon144.png"
alt="Le logo de MDN.">
<figcaption>Logo MDN</figcaption>
</figure>
<figure>
<figcaption>Obtenir les détails du navigateur</figcaption>
<pre>
function NavigatorExample(){
let txt;
txt = "Nom de code: " + navigator.appCodeName;
txt += "Nom du navigateur : " + navigator.appName;
txt += "Version : " + navigator.appVersion ;
txt += "Cookies activés : " + navigator.cookieEnabled;
txt += "Plate-forme: " + navigator.platform;
txt += "En-tête d\'agent utilisateur : " + navigator.userAgent;
console.log("NavigatorExample", txt);
}
</pre>
</figure>
<figure>
<figcaption>
<cite>Edsger Dijkstra : </cite>
</figcaption>
<p>« Si le débogage correspond au retrait de bogues,
alors la programmation correspond à l\'ajout de bogues. »
</p>
</figure>
<figure style="display:table; margin:0 auto;">
<img loading="lazy" src="/public/illustrations/2021/.grole_u.jpg" alt="Grole abandonnée sur les rochers, août 2021" title="Grole abandonnée sur les rochers, août 2021" height="600" width="600" class="a42-ac-replace-img">
<figcaption>Grole abandonnée sur les rochers du petit port de Pen-Hors</figcaption>
</figure>
<figure style="display:table; margin:0 auto;">
<a href="#">
<img loading="lazy" src="/public/illustrations/2021/.grole_u.jpg" alt="Grole abandonnée sur les rochers, août 2021" title="Grole abandonnée sur les rochers, août 2021" height="600" width="600" class="a42-ac-replace-img">
</a>
<figcaption>Grole abandonnée sur les rochers du petit port de Pen-Hors</figcaption>
</figure>
<figure style="display:table; margin:0 auto;"><a href="#"><img loading="lazy" src="/public/illustrations/2021/.grole_u.jpg" alt="Grole abandonnée sur les rochers, août 2021" title="Grole abandonnée sur les rochers, août 2021" height="600" width="600" class="a42-ac-replace-img"></a><figcaption>Grole abandonnée sur les rochers du petit port de Pen-Hors</figcaption></figure>
<figure>
<figcaption>Listen to the T-Rex:</figcaption>
<audio
controls
src="/media/cc0-audio/t-rex-roar.mp3">
Your browser does not support the
<code>audio</code> element.
</audio>
</figure>
';
$subst = "";
$result = preg_replace($re, $subst, $str);
echo "The result of the substitution is ".$result;
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for PHP, please visit: http://php.net/manual/en/ref.pcre.php