#include <StringConstants.au3> ; to declare the Constants of StringRegExp
#include <Array.au3> ; UDF needed for _ArrayDisplay and _ArrayConcatenate
Local $sRegex = "(?m)^(([a-zA-Z0-9\|\!\._\-\s\:]*<a href=\"#\" onclick=\"ON_CLICK_EVENT\">[a-zA-Z0-9\|\!\._\-]*<\/a>)|(<a href=\"#\" on(c|C)lick=\"(HSBC_pre_chat_est\(\)\;\s)*ON_CLICK_EVENT\"(\s)*>(\s)*<img src=(\'|\")[a-zA-Z0-9\|\!\._\-\:\,\/\s]*(\'|\")(\s)*(\/)*>(\s)*<\/a>)|(<a href=\"#\" onclick='try \{ LPButtonClicked\(\)\; \} catch \(e\) \{\}\; ON_CLICK_EVENT'\; title=\"Start Live Chat\"><img src=\"[a-zA-Z0-9\|\!\._\-\:\,\/\s]*\" border=0 alt=\"Live Chat\" onload=\"LPButtonDisplayed\(\)\"><\/a>)|([a-zA-Z0-9\|\!\._\-\s]*<a href=\"#\" onclick=(\'|\")ON_CLICK_EVENT(\'|\")><span><span class=\"lpStartChat\">[a-zA-Z0-9\|\!\._\-\s]*<\/span><\/span><\/a>)|(<a href='javascript\:\;' on(c|C)lick='javascript\:ON_CLICK_EVENT\;'>(\s)*<img src='[a-zA-Z0-9\|\!\._\-\:\,\/\s]*'(\s)*(border='0'\salt='Chat with an HSBC Representative' title='Chat with an HSBC Representative')*(\/)*>(\s)*<\/a>)|(<a href='#' onClick='javascript\:ON_CLICK_EVENT\; '>[a-zA-Z0-9\|\!\._\-\s]*<\/a>)|(<h4>Live Chat<\/h4>(\s)*<div class=\"supportContentGeneralBoxInnerChat\">(\s)*<h5>Welcome to Live Chat<\/h5>(\s)*<p>How can we help you\?<\/p>(\s)*<p><a class=\"redBtn liveChatBtn\" href=\"#\"(\s)*onclick=\"ON_CLICK_EVENT\" title=\"Start Chat\"><span>Start Chat<\/span><\/a><\/p>(\s)*<\/div>)|(<div style='padding\:0px' box-shadow\: -3px 3px 10px(\s)*#888888\;><a href=\"#\" onClick='ON_CLICK_EVENT\;'target=\"_self\">(\s)*<img src='[a-zA-Z0-9\|\!\._\-\:\,\/\s]*'(\s)*id='SwitchButton' Border='0'\/><\/a><\/div>)|(<div id=\"lpButtonTab\" style=\"float:left; width:30px\" onclick=\"lpStickyButton\.toggleState\(\);\"><img src=\"[a-zA-Z0-9\|\!\._\-\:\,\/\s]*\" width=\"30\" height=\"125\" border=\"0\" \/><\/div>(\s)*<div id=\"lpButtonArea\" style=\"margin-left:30px; width:251px\"><img src='[a-zA-Z0-9\|\!\._\-\:\,\/\s]*' style='cursor:pointer' onclick='ON_CLICK_EVENT' \/><\/div>)|(<div class=\"liveChatSideBox\">(\s)*<h2>Live chat<\/h2>(\s)*<p>Welcome to Live Chat\. How can we help you\?<\/p>(\s)*<p><a class=\"redBtn liveChatBtn\" href=\"#\"(\s)*onclick=\"ON_CLICK_EVENT\"(\s)*title=\"Start Chat\"><span>Start Chat<\/span><\/a><\/p>(\s)*<\/div>))$"
Local $sString = "<div class="liveChatSideBox">" & @CRLF & _
" <h2>Live chat</h2>" & @CRLF & _
" <p>Welcome to Live Chat. How can we help you?</p>" & @CRLF & _
" <p><a class="redBtn liveChatBtn" href="#" onclick="ON_CLICK_EVENT"" & @CRLF & _
"title="Start Chat"><span>Start Chat</span></a></p> </div>" & @CRLF & _
"" & @CRLF & _
"<a href="#" onclick="ON_CLICK_EVENT" >" & @CRLF & _
"<img src='https://www.hsbc.co.uk/content_static/en/images/en/alt_design_3E.png' />" & @CRLF & _
"</a>"
Local $aArray = StringRegExp($sString, $sRegex, $STR_REGEXPARRAYGLOBALFULLMATCH)
Local $aFullArray[0]
For $i = 0 To UBound($aArray) -1
_ArrayConcatenate($aFullArray, $aArray[$i])
Next
$aArray = $aFullArray
; Present the entire match result
_ArrayDisplay($aArray, "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 AutoIt, please visit: https://www.autoitscript.com/autoit3/docs/functions/StringRegExp.htm