#include <MsgBoxConstants.au3> ; to declare the Constants of MsgBox
Local $sRegex = "(?m)<figure[^>]*>([\t\n\r\s]*)<figcaption[^>]*>(.*)<\/figcaption>([\t\n\r\s]*)<audio[^>]*>(([\t\n\r\s]|.)*)<\/audio>([\t\n\r\s]*)<\/figure>"
Local $sString = "<!-- Une simple image -->" & @CRLF & _
"<figure>" & @CRLF & _
" <img" & @CRLF & _
" src="https://developer.mozilla.org/static/img/favicon144.png"" & @CRLF & _
" alt="Le logo de MDN.">" & @CRLF & _
"</figure>" & @CRLF & _
"" & @CRLF & _
"<!-- Une image avec une légende -->" & @CRLF & _
"<figure>" & @CRLF & _
" <img" & @CRLF & _
" src="https://developer.mozilla.org/static/img/favicon144.png"" & @CRLF & _
" alt="Le logo de MDN.">" & @CRLF & _
" <figcaption>Logo MDN</figcaption>" & @CRLF & _
"</figure>" & @CRLF & _
"<figure>" & @CRLF & _
" <figcaption>Obtenir les détails du navigateur</figcaption>" & @CRLF & _
" <pre>" & @CRLF & _
" function NavigatorExample(){" & @CRLF & _
" let txt;" & @CRLF & _
" txt = "Nom de code: " + navigator.appCodeName;" & @CRLF & _
" txt += "Nom du navigateur : " + navigator.appName;" & @CRLF & _
" txt += "Version : " + navigator.appVersion ;" & @CRLF & _
" txt += "Cookies activés : " + navigator.cookieEnabled;" & @CRLF & _
" txt += "Plate-forme: " + navigator.platform;" & @CRLF & _
" txt += "En-tête d'agent utilisateur : " + navigator.userAgent;" & @CRLF & _
" console.log("NavigatorExample", txt);" & @CRLF & _
" }" & @CRLF & _
" </pre>" & @CRLF & _
"</figure>" & @CRLF & _
"<figure>" & @CRLF & _
" <figcaption>" & @CRLF & _
" <cite>Edsger Dijkstra : </cite>" & @CRLF & _
" </figcaption>" & @CRLF & _
" <p>« Si le débogage correspond au retrait de bogues," & @CRLF & _
" alors la programmation correspond à l'ajout de bogues. »" & @CRLF & _
" </p>" & @CRLF & _
"</figure>" & @CRLF & _
"<figure style="display:table; margin:0 auto;">" & @CRLF & _
"<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">" & @CRLF & _
"<figcaption>Grole abandonnée sur les rochers du petit port de Pen-Hors</figcaption>" & @CRLF & _
"</figure>" & @CRLF & _
"" & @CRLF & _
"<figure style="display:table; margin:0 auto;">" & @CRLF & _
"<a href="#">" & @CRLF & _
"<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">" & @CRLF & _
"</a>" & @CRLF & _
"<figcaption>Grole abandonnée sur les rochers du petit port de Pen-Hors</figcaption>" & @CRLF & _
"</figure>" & @CRLF & _
"" & @CRLF & _
"<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>" & @CRLF & _
"" & @CRLF & _
"<figure>" & @CRLF & _
" <figcaption>Listen to the T-Rex:</figcaption>" & @CRLF & _
" <audio" & @CRLF & _
" controls" & @CRLF & _
" src="/media/cc0-audio/t-rex-roar.mp3">" & @CRLF & _
" Your browser does not support the" & @CRLF & _
" <code>audio</code> element." & @CRLF & _
" </audio>" & @CRLF & _
"</figure>" & @CRLF & _
""
Local $sSubst = ""
Local $sResult = StringRegExpReplace($sString, $sRegex, $sSubst)
MsgBox($MB_SYSTEMMODAL, "Result", $sResult)
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 AutoIt, please visit: https://www.autoitscript.com/autoit3/docs/functions/StringRegExp.htm